Сценарии Jmeter, когда количество отправленных запросов меняется каждый раз

#jmeter

#jmeter

Вопрос:

У нас есть веб-приложение, основанное на Vaadin, которое я пытаюсь протестировать на производительность. Приложение имеет отчеты. Поэтому всякий раз, когда я открываю отчет, внутренне он отправляет некоторые вызовы Get и Post, некоторые из этих асинхронных вызовов. Проблема в том, что количество отправленных запросов меняется каждый раз, когда я открываю отчет. Например, в первый раз отправляется / принимается 5 запросов, во второй раз семь запросов, в третий раз около 11 запросов и в следующий раз снова пять запросов и т.д., случайным образом. Итак, когда я записывал, скажем, было ли пять запросов, во время воспроизведения произошел сбой. Возможно ли обойти эти проблемы?

Ответ №1:

Согласно статье «Как проверить производительность веб-приложения Vaadin с помощью JMeter«:

В Vaadin 7 больше не существует setDebugId() метода; вместо этого есть setId() метод. К сожалению, этот метод не устанавливает идентификаторы компонентов, используемые в ajax-запросе. Поэтому по умолчанию тесты JMeter приложения Vaadin 7 нестабильны к изменениям пользовательского интерфейса. Чтобы преодолеть эту проблему, вы можете использовать наш JMeterServlet (см. Конец Этой статьи) вместо стандартного VaadinServlet . При использовании идентификаторы JMeterServlet компонентов снова используются в ajax-запросах. Смотрите пример выше о том, как заменить VaadinServlet по умолчанию на JMeterServlet. Для получения дополнительной информации см. Тикет Vaadin # 13396.

Кроме того, воспроизведение записанных AJAX-запросов — не лучшая идея, потому что реальный браузер выполняет AJAX-запросы параллельно, в то время как JMeter последовательно выполняет сэмплеры HTTP-запросов, что дает совершенно разные сетевые возможности, поэтому рассмотрите возможность размещения этих сэмплеров HTTP-запросов, которые имитируют вызовы AJAX, под параллельным контроллером