Процессор используется для модификации семплеров в их объеме.
Есть 2 типа процессоров:
- Препроцессор
- Постпроцессор
Препроцессор:
Перед отправкой запроса сэмплера препроцессор выполняет какое-то действие .
Рассмотрим простой пример: предположим, вы хотите, чтобы JMeter прошел через тестируемый веб-сайт, проанализировал ссылку (проверьте все ссылки на странице) и вернул HTML. Перед созданием HTTP-запроса вы должны добавить к своему контроллеру какое-либо действие, такое как «анализатор ссылок HTML».
Постпроцессор:
Постпроцессор выполняет какое-то действие после запроса сэмплера.
Рассмотрим простой пример: JMeter отправляет HTTP-запрос на тестируемый веб-сервер (например, www.google.com) и получает ответ. Вы хотите, чтобы JMeter остановил проверку, если ответ сервера является ошибкой. Вы можете использовать постпроцессор для выполнения вышеуказанной задачи следующим образом:
Пример постпроцессора
Это руководство покажет вам пошаговые инструкции по использованию постпроцессора в JMeter. Начнем с простого тестового сценария.
- JMeter отправляет HTTP-запрос на тестовый веб-сервер www.google.com.
- JMeter получает ответ от сервера Google.
- Если ответ сервера является ошибкой , JMeter остановит тест.
- Если сервер отвечает ОК (без ошибок), JMeter продолжит тест.
Вот дорожная карта этого примера:
Предварительное условие:
Мы повторно используем Шаг 1 и Шаг 2 в статье Тестирование производительности JMeter.
Шаг 1) Добавьте группу тем
Щелкните правой кнопкой мыши план тестирования и добавьте новую группу потоков: Добавить -> Потоки (пользователи) -> Группа потоков.
Но в панели управления группой потоков введите Свойства потока следующим образом:
Этот параметр позволяет JMeter создавать 10 пользовательских запросов к http://www.google.com 10 раз.
Шаг 2) Добавьте элементы JMeter
- Добавить HTTP-запрос по умолчанию
- Добавить HTTP-запрос
Мы по-прежнему заставляем JMeter отправлять запрос http://www.google.com на сервер Google.
Шаг 3) Добавьте элемент постпроцессора
Щелкните правой кнопкой мыши группу потоков -> Добавить -> Постпроцессор -> Обработчик действий состояния результата
Обработчик действия статуса результата позволяет пользователю остановить поток или весь тест, если запрос пользователя не удался.
На панели «Обработка действия состояния результата» выберите « Остановить тест сейчас» . Этот выбор остановит тест, если JMeter получит ошибку из ответа сервера.
Шаг 4) Настройте HTTP-запрос
Откройте панель HTTP-запросов. Введите «abc» в поле «Путь».
Когда вы вводите «abc» в путь, JMeter создаст URL-запрос к серверу Google: http://www.google.com/abc. Этот URL не существует на сервере Google. Это неправильный запрос URL, поэтому сервер Google вернет ошибку.
Шаг 5) Добавьте дерево результатов просмотра
Щелкните правой кнопкой мыши группу потоков -> Добавить -> Слушатель -> Просмотреть дерево результатов
Шаг 6) Запустите тест
Выберите «Просмотр дерева результатов», нажмите кнопку «Выполнить» в строке меню. Вы увидите ответ с ошибкой от сервера Google, и тест остановится, не завершив 100 потоков.
Теперь вернитесь к шагу 4, откройте панель HTTP-запроса и введите в нее « календарь ». Он заставляет JMeter создавать URL-запрос https://calendar.google.com/calendar/u/0/r к серверу Google. Это правильный запрос URL, поэтому сервер Google вернет OK (без ошибок).
Выберите «Просмотр дерева результатов», нажмите кнопку «Выполнить» в строке меню. Вы увидите ответ OK от сервера Google, и тест будет продолжаться, пока не будут завершены все 100 потоков.
Исправление проблем:
Если вы столкнулись с проблемой при выполнении описанного выше сценария… сделайте следующее:
- Проверьте, подключаетесь ли вы к Интернету через прокси. Если да, удалите прокси.
- Откройте новый экземпляр Jmeter
- Откройте ProcessorTestPlan.jmx в Jmeter
- Дважды щелкните группу потоков -> Просмотреть дерево результатов
- Запустить тест