JMeter - HTTP-запрос не видит переменную, определенную в BS PreProcessor
Определив HTTPRequest с BeanShellPreProcessor с помощью следующего кода:
log.info(vars.get("view_state"));
props.put("view_state", vars.get("view_state"));
Следующее с конфигурацией HTTP-запроса, который является:
Тем не менее, последний запрос не распознает этот параметр и показывает это:
...&javax.faces.ViewState=%24%28view_state%29...
Вопрос в том, почему он не распознается как переменная?
1 ответ
Решение
Вы помещаете значения в свойства JMeter и пытаетесь прочитать их из переменных JMeter. Свойства и переменные - это разные звери, к которым нужно обращаться по-разному.
Решения в:
- Измени свой
props.put
заявление кvars.put
(другой синтаксис остается прежним).vars
это сокращение от класса JMeter Variables, используя его, вы будете манипулировать переменными JMeter вместо свойств - Оставьте свой скрипт Beanshell без изменений и получите доступ к значению из свойства с помощью функции __P(), например
${__P(view_state)}
Дополнительная информация: Как использовать BeanShell: любимый встроенный компонент JMeter