Корреляция не работает при использовании контроллера пропускной способности

Пожалуйста, предложите решение для этого ...

План испытаний Дан так:

Пользователи Thread Group-10

+ конфигурация набора данных csv

Авторизоваться

Контроллер пропускной способности 1-60%

Запрос1

Запрос2

Запрос3

Контроллер пропускной способности 2-40%

Запрос4

Запрос5

Но после запуска теста я получаю сообщение об ошибке - все образцы / запросы под контроллером пропускной способности 1 проходят

Но все запросы к контроллеру пропускной способности 2 не выполняются.

Поскольку коррелированные значения не передаются от запросов в контроллере пропускной способности 1 к запросам (куда я звонил) в контроллере пропускной способности 2.

Примечание. Если я задал такой же процент в контроллерах пропускной способности, тест проходит успешно, и коррелированные значения передаются другим запросам.


person manu    schedule 20.12.2019    source источник


Ответы (2)


У вас есть некоторые значения в запросах TC1, которые коррелируются в запросах TC2. Если какой-либо из запросов в TC2 требует коррелированных данных из TC1, вы должны вывести их из TC1, то есть ваш запрос входа в систему. Это потому, что, возможно, поток не выигрывает в TC1 (не в 60%), поэтому он не проходит через TC1, но он выигрывает в TC2 (находится в 40%) и проходит через TC2, и потому, что он коррелирован с запросом в TC1, который не запускается, поэтому он не работает.

Пользователи Thread Group-10

+ конфигурация набора данных csv

Вход -> Thread_n

Контроллер пропускной способности 1-60%

Запрос1

Request2 (предоставить данные с именем X)

Запрос3

Контроллер пропускной способности 2-40%

Request4 (требуются данные с именем X) -> Thread_n завершается неудачно, поскольку отсутствует X

Запрос5

person BzH    schedule 20.12.2019

Корреляция не выполняется, потому что 60% пользователей выполняют Request 1, 2 and 3 и 40% пользователей выполняют Request 4 and 5

Каждый поток JMeter (виртуальный пользователь) содержит переменные в своем локальном хранилище потока, поэтому, если у вас, скажем, 10 пользователей:

  • 6 из них выполнят вход, Request 1, 2 and 3 и выйдут.
  • 4 из них выполнят вход, Request 4 and 5 и выйдут.

Если вам нужно передать некоторые коррелированные значения от пользователей, которые запускают семплеры в Контроллере транзакций 1, пользователям, которые выполняют семплеры в Контроллере транзакций 2, вам нужно будет перейти на Плагин межпоточного взаимодействия (не входит в комплект поставки JMeter, вам понадобится чтобы установить его с помощью JMeter Plugins Manager)

person Dmitri T    schedule 23.12.2019