
Зациклить выполнение HTTP-request
#1
Отправлено 13 апреля 2011 - 12:44
Может залогиниться успешно, а может отпасть по тайм-ауту (при нагруженном томкате).
В тесте использую только один HTTP-реквест, его засовываю в контроллер.
Задача - заставить Jmeter при завершении выполнения реквеста по тайм-ауту снова повторять этот реквест до тех пор, пока пользователь не авторизуется успешно.
Я пытался использовать контроллеры "While Controller" и "If Controller", а также "BeanShell Assertion", но не получилось..
Подскажите, как вообще можно решить такую задачу с помощью Jmeter?
#2
Отправлено 13 апреля 2011 - 13:26
Переменную для условия модифицировать с помощью Post-Processor.
Assertion ни при чем.
Чтобы подсказывать дальше нужно больше деталей - что в тест-плане? Прикрепите его к сообщению на форуме.
Андрей Похилько
#3
Отправлено 14 апреля 2011 - 11:09
While Controller тут как раз.
Переменную для условия модифицировать с помощью Post-Processor.
Assertion ни при чем.
Чтобы подсказывать дальше нужно больше деталей - что в тест-плане? Прикрепите его к сообщению на форуме.
детали в тест-плане в приложении. Подскажите, плиз, каким пост-процессором и как воспользоваться, чтобы получив ответ с кодом ошибки не равным 200, jmeter снова выполнял тот же реквест, до тех пор, пока реквест не завершится успешно?
И желательно перед повторным выполнением запроса выдерживал определённую паузу.
Прикрепленные файлы
#4
Отправлено 14 апреля 2011 - 16:06
#5
Отправлено 15 апреля 2011 - 07:59
детали в тест-плане в приложении. Подскажите, плиз, каким пост-процессором и как воспользоваться, чтобы получив ответ с кодом ошибки не равным 200, jmeter снова выполнял тот же реквест, до тех пор, пока реквест не завершится успешно?
И желательно перед повторным выполнением запроса выдерживал определённую паузу.
В приложении - примерный ответ.
Логика такая: "пока переменная repeat не равна false, делать попытки"
После каждой попытки Extractor проверяет, равен ли код 200, если равен то устанавливает repeat в false, иначе true
Пауза между попытками обеспечивается таймером.
Debug Sampler покажет когда цикл окончен.
Отлаживать такие тесты лучше на одном треде, а не сразу на 500.
Пробуйте!
Прикрепленные файлы
Андрей Похилько
#6
Отправлено 15 апреля 2011 - 09:58
В приложении - примерный ответ.
Логика такая: "пока переменная repeat не равна false, делать попытки"
После каждой попытки Extractor проверяет, равен ли код 200, если равен то устанавливает repeat в false, иначе true
Пауза между попытками обеспечивается таймером.
Debug Sampler покажет когда цикл окончен.
Отлаживать такие тесты лучше на одном треде, а не сразу на 500.
Пробуйте!
Огромное спасибо, всё заработало с полпинка!
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных