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

Я ищу решение для такой же ситуации, представленной в , как получить ответ массива на запрос jdbc в jmeter? , но нужно указать переменную, как определено пользователем.

Допустим, я хотел бы передать A1 = dan, и моя пользовательская переменная name = 'dan'.Я определяю его в определяемой пользователем переменной.

if(x==name)
then
{vars.put("Y")
}

, тогда эта переменная должна передаваться как ${Y} в сэмплере http.

Есть ли способ сделать это?

Ценю вашу помощь.Спасибо.

1 Ответ

0 голосов
/ 18 сентября 2018

Вам не нужно ничего объявлять через определяемые пользователем переменные , если у вас есть переменная A1 в результате Sampler1, вы сможете получить к ней доступ как ${A1} вSampler2

JMeter Variables across samplers

Более того, вам не следует обновлять значение определяемой пользователем переменной, так как она не будет распространяться где-либо еще:

Обратите внимание, что все элементы UDV в плане тестирования - независимо от того, где они находятся - обрабатываются в начале.

Итак, я вижу 2 варианта использования:

  1. Ваши 2 сэмплера находятся в одной группе потоков .В этом случае вам не нужно ничего делать, переменная обычно будет доступна другим сэмплерам
  2. Ваши 2 сэмплера находятся в разных группах потоков.В этом случае вам нужно будет преобразовать переменную в свойство JMeter с помощью функции __setProperty () .Доступ к этому свойству в других группах потоков можно получить с помощью функции __ P () .Если ваша тестовая логика более сложна, то есть во 2-й группе потоков не следует запускать Sampler2, если переменная не доступна - в этом случае вам потребуется плагин Inter-Thread Communication (может быть установлен с использованием плагинов JMeterМенеджер )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...