JMeter «если контроллер» с параметрами?

Для procs запишите procs с обертками сценария в простые файлы и примените изменения из тех файлов. Если это применялось правильно, то можно зарегистрироваться в том файле, и Вы сможете воспроизвести его из того файла также.

Для изменений схемы, Вы, возможно, должны зарегистрироваться в сценариях для возрастающего внесения изменений, которые Вы внесли. Запишите сценарий, примените его и затем регистрируйте его. Можно создать процесс затем, для автоматического применения каждого сценария схемы последовательно.

26
задан Ben Flynn 18 April 2011 в 12:08
поделиться

4 ответа

Вы можете просто использовать что-то вроде

${my_variable}=='1'

Иногда документация JMeter может сбивать с толку:)

Редактировать 27 сентября 2017 г .:

ответ здесь работает, но оказывает очень плохое влияние на производительность, когда число потоков превышает 40.

См. Ниже правильный и наиболее эффективный ответ:

См. :

21
ответ дан 28 November 2019 в 06:12
поделиться

ОТКЛЮЧИТЕ ФУНКЦИЮ CHECKBOX «Интерпретировать условие как выражение переменной»

Я потратил пару часов, не снимая этот флажок. Это работало с и без точки с запятой (;) в конце оператора. Убедитесь, что вы установили пользовательские переменные, прежде чем вызывать контроллер if.

Все следующие варианты работали для меня в Jakarta Jmeter 1.5

  • $ {__ javaScript ("$ {HOMEPAGE}" == "Y")}
  • $ {__ javaScript ( "$ {HOMEPAGE}" == "Y")};
  • "$ {HOMEPAGE}" == "Y"
  • "$ {HOMEPAGE}" == "Y";
8
ответ дан 28 November 2019 в 06:12
поделиться

Если контроллер будет внутренне использовать javascript для оценки состояния, но это может привести к снижению производительности.

Лучшим вариантом (по умолчанию, начиная с JMeter 4, см. https://bz.apache.org/bugzilla/show_bug.cgi?id=61675 ), является проверка " Условие интерпретации как выражение переменной? ", то в поле условия у вас есть 2 варианта:

  • Опция 1: Используйте переменную, которая содержит true или false. Например, если вы хотите проверить, был ли последний образец успешным, вы можете использовать

$ {JMeterThread.last_sample_ok}

If Controller starting with JMeter 3.4

или любую переменную, которую вы хотите, которая содержит true / false

$ {myVar}

  • Опция 2: использовать функция (рекомендуется $ { __jexl3 ()}) для вычисления выражения, которое должно возвращать true или false. Например, если COUNT равен 1:

$ {__ jexl3 ("$ {COUNT}" == "1",)}

ИЛИ

$ {__jexl3 ($ {COUNT} == 1,)}

If Controller with expression starting with JMeter 3.4

Начало с 4.0, если вы не используете «Условие интерпретации как выражение переменной?», будет отображаться предупреждение в КРАСНОМ:

If Controller using javascript in JMeter 3.4

Если вы хотите больше узнать о JMeter и тестировании производительности, эта книга может вам помочь.

7
ответ дан 28 November 2019 в 06:12
поделиться

Заменить: $ {my_variable} == '1' на "$ {my_variable}" == "1"

3
ответ дан 28 November 2019 в 06:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: