Настройка времени ожидания ответа в Apache JMeter
Я пытаюсь проверить, превышает ли время ответа конкретного HTTP-запроса 30 секунд, и если да, то отметьте его как неудачный и остановите поток. Потому что теперь иногда я даже вижу время ответа, близкое к 80seconds, браузер не ждет ответа так долго.
Я нашел следующие три способа, чтобы установить значение тайм-аута в JMeter, однако это меня смущает, потому что есть несколько вариантов и я не знаю, какой из них использовать, или если есть какая-то разница вообще между ними.
Итак, вот параметры, которые я нашел, связанные с таймаутом ответа:
- установка значения тайм-аута ответа в пробоотборнике
- добавить срок утверждение
3. Параметр timeout в в JMeter.свойства файл конфигурации. Вариантов я нашел здесь:
- os_sampler.poll_for_timeout=x
- протоколу HTTP.разъем.тайм-аут=х
- С помощью HttpClient.тайм-аут=х
Итак, проблема в том, что я не знаю, где установить тайм-аут ответа из перечисленных параметров. Есть ли вообще разница между этими вариантами? Итак, что я хотел бы видеть в результате: если конкретный HTTP-запрос занимает более 30 секунд для ответа, прекратите ждать для ответа и отметьте его как неудачный запрос.
2 ответов
для вашей потребности утверждение не является правильным решением, поскольку оно будет только отмечать запрос как неудачный, но он будет ждать.
правильным вариантом является тайм-аут ответа.
по поводу 3-го пункта
-
os_sampler.poll_for_timeout=x => не для http, см.:
-
протоколу HTTP.разъем.тайм-аут=х => применяется ко всем запросам, использующим HttpClient4 или 3, см.:
-
с помощью HttpClient.timeout=x = > то же самое, см.:
Я думаю, что лучший вариант-использовать 1. , если вы хотите, чтобы эти значения применялись ко всем запросам, просто используйте элемент Http Request Defaults:
время ожидания сокета / подключения и чтения / ответа можно установить из Http Request Defaults
раздел в графическом интерфейсе jmeter. См. пример:
время ожидания подключения: 3 секунды
Время отклика: 20 секунд.