Контроллеры в JMeter: Цикл, Простой, Транзакция, Модуль, Случайный
Что такое логический контроллер?
Логические контроллеры позволяют вам определить порядок обработки запроса в потоке. Он позволяет вам контролировать, «когда» отправлять пользовательский запрос на веб-сервер. Например, вы можете использовать случайные контроллеры для случайной отправки HTTP-запросов на сервер.
Логические контроллеры определяют порядка в котором выполняется запрос пользователя.
Некоторые часто используемые логические контроллеры приведены ниже:
Контроллер записи
JMeter запись Тестирование шаги; контроллер записи - это заполнитель для сохранения этих шагов записи.
Простой контроллер
Простой контроллер — это всего лишь контейнер по запросу пользователя.
Контроллер петли
Контроллер цикла запускает запрос пользователя определенное количество раз или беги навсегда как показано на рисунке:
Случайный контроллер
Случайный контроллер выполняет все пользовательские запросы случайный порядок в каждом периоде цикла.
Например, у вас есть 3 запроса пользователей на сайт. http://www.google.com в следующем порядке:
- HTTP-запрос
- FTP-запрос
- JDBC-запрос
Эти 3 запроса должны выполняться 5 раз. Всего на сервер Google будет отправлено 15 пользовательских запросов. JMeter.
In последовательный заказ, заявки отправляются последовательно в следующем порядке:
HTTP-запрос -> FTP-запрос-> JDBC-запрос
для каждой петли.
In случайный заказ, запросы отправляются как случайно,
FTP-запрос -> HTTP-запрос -> JDBC-запрос
Or
Запрос JDBC -> Запрос FTP-> Запрос HTTP
Для каждой петли.
Модуль Контроллер
Цель контроллера модулей — добавить модульность в JMeter.
Общая идея заключается в том, что веб-приложения состоят из небольших функциональных блоков (например, вход в систему, создание учетной записи, выход из системы…). Эту функциональность можно сохранить в Простой контроллер как «модули». Контроллер модулей выберет, какой модуль необходимо запустить.
Рассмотрим следующий сценарий -
Вы хотите смоделировать:
- пользователи 50 вырубка,
- пользователи 100 Вход в систему
- пользователи 30 по области применения www.google.com
Вы можете использовать JMeter создать 3 модуля. Каждый модуль имитирует каждое действие пользователя: вход в систему, выход из системы и поиск.
Контроллер модуля выбирает, какой модуль необходимо запустить.
Другие важные контроллеры
- Чередование Контроллер: берет и делает one пользовательского запроса выполняется в каждый петля нити.
- Время выполнения Контроллер: элементы управления сколько его детям разрешено бегать.
Например, если вы указали Runtime Controller 10 секунд, JMeter запустит тест на 10 секунд.
- сделка Контроллер: измеряет общее время доставлен в окончание тестовое выполнение
- Включают Контроллер: предназначен для использования внешнего плана тестирования. Этот контроллер позволяет использовать несколько планов тестирования в JMeter. Подробности смотрите в JMeter Тестирование производительности.
Пример контроллера контура
В этом разделе приведены пошаговые инструкции по добавлению Контроллер петли установите текущий план тестирования производительности.
Контроллер циклов заставляет семплеры запускаться определенное количество раз в дополнение к значению цикла, указанному вами для группы потоков. Например, если вы
- Добавьте один HTTP-запрос к контроллеру циклов с числом циклов 50.
- Настройте количество циклов группы потоков на 2.
- Тогда, JMeter отправит в общей сложности 50 * 2 = 100 HTTP-запросов.
Это Дорожная карта этого примера:
Шаг 1) Настройка группы потоков
We повторное использование Шаг 1, 2 в уроке JMeter Тестирование производительности.
-
Добавить группу тем
Щелкните правой кнопкой мыши на План тестирования и добавьте новую группу потоков: Добавить-> Темы (Пользователи) ->Группа потоков
Но на панели управления группой потоков введите «Свойства потока» следующим образом:
Это сделает one запрос пользователя на веб-сервер google.com и запустите его 2 раз.
-
Добавить JMeter элементы
Добавьте HTTP-запрос по умолчанию на www.google.com.
-
Добавление контроллера цикла
Щелкните правой кнопкой мыши группу потоков -> Логический контроллер -> Контроллер цикла.
Шаг 2) Настройка контроллера контура
Добавьте значение 50 в поле «Количество циклов», как показано на рисунке ниже. Это сделает one запрос пользователя на веб-сервер google.com запустить его 50 раз, в дополнение к значению цикла = 2, которое вы указали для группы потоков выше. Итак, JMeter отправлю в общей сложности 2 * 50 = 100 HTTP-запросы.
Щелкните правой кнопкой мыши «Контроллер цикла», «Добавить» -> «Сэмплер» -> «HTTP-запрос».
Шаг 3) Добавьте результаты просмотра в таблицу
Мы повторно используем Шаг 2 в Таймер чтобы добавить просмотр результатов в таблице
Итак, план тестирования показан на рисунке ниже.
Шаг 4) Запустите тест
Теперь вернитесь к «Просмотру результатов в таблице», нажмите кнопку «Пуск» в строке меню (Ctrl+R), чтобы запустить тест.
Как показано на рисунке ниже, JMeter Имитирует один запрос пользователя, который отправляется 100 раз на веб-сервер http://www.google.com/. Тест останавливается после того, как запрос пользователя был отправлен 100 раз.
УСТРАНЕНИЕ НЕПОЛАДОК
- Если вы столкнулись с проблемой при выполнении описанного выше сценария… выполните следующие действия:
- Проверьте, подключаетесь ли вы к Интернету через прокси. Если да, удалите прокси.
- Откройте новый экземпляр Jmeter
- Откройте приложение КонтроллерTestPlan.jmx в Джметре
- Нажмите «Группа тем» -> «Просмотреть результат в таблице».
- Запустить тест