Как получить длину строки и вывести определяемые пользователем переменные в Jmeter - PullRequest
0 голосов
/ 17 октября 2018

Я определяю пользовательские переменные с именем:

message_title: "Test searching by title message"

Затем мне нужно запустить тестовый пример, в котором входные данные являются дочерней строкой вышеуказанных переменных, таких как: «поиск» или «заголовок».

Я использовал параметр пользователя и определил 2 переменные с именем:

len : ${__strLen(${message_title})}

middle_search: ${__substring(${message_title}, 5, ${__intSum(${len},-5)})}

Но когда я запускаю тестовый пример, выдается ошибка:

51 ОШИБКА - jmeter.threads.JMeterThread: тест не пройден!java.lang.NumberFormatException: для входной строки: "$ {__ strLen ($ {message_title})} .... *

Как получить длину и дочернюю строку определяемых пользователем переменных?

Спасибо,

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Согласно Определяемым пользователем переменным Документация:

UDV обрабатываются в порядке их появления в плане сверху вниз.

Таким образом, вы можете использовать 2 экземпляра пользовательских переменных

  1. Добавить пользовательские переменные # 1 в свой план тестирования и определить там следующие переменные:

    • message_title = Test searching by title message
    • len - ${__strLen(message_title,)}

      JMeter User Defined Variables 1

  2. Добавьте пользовательские переменные № 2 в свой план тестирования и определите следующую переменную там:

    • middle_search = ${__substring(${message_title},5,${__intSum(${len},-5)},)}

      JMeter User Defined Variables 2

  3. Это все, вы должны иметь доступ к определенным переменным в ThreadГруппы

    JMeter Useer Defined Variables Values

На всякий случай Использование пользовательских переменных статьяузнать больше о концепции пользовательских переменных.

0 голосов
/ 17 октября 2018

Для длины это работает для меня, я сохраняю результат в len переменная:

$ { __ strLen ($ {message_title}, len)}

Тогда:

$ { __ подстрока ($ {message_title}, 5, $ { __ intSum ($ {len}, - 5)},)}

...