#java #testing #jmeter
#java #тестирование #jmeter
Вопрос:
У меня есть CSV-файл значений, который необходимо запустить с конечной точкой REST с помощью JMeter. У меня проект настроен примерно так:
- Группа потоков
- HTTP-запрос
- Конфигурация набора данных CSV
- Постпроцессор JSR223
- XPath Extractor
- HTTP-запрос
Я использую XPath Extractor для поиска определенного пути в HTTP-ответе. Затем я использую постпроцессор JSR233 для оценки этого пути вывода и устанавливаю переменную с vars.set
, чтобы отслеживать, какие значения я получаю.
Это кажется действительно хакерским способом написать что-то подобное. Что мне нужно, так это отслеживать количество результатов, которые были «хорошими» по сравнению с «плохими», и конечная точка, к сожалению, не использует коды ошибок HTTP (не мой выбор), чтобы указать, когда что-то не удалось (например, 404, когда ничего не возвращается. Есть предложения?
Ответ №1:
Я бы предложил использовать утверждение JSR223, которое дополнительно позволит вам условно устанавливать критерии прохождения / сбоя, такие как:
if (1 != 2) {
prev.setSuccessful(false);
prev.setResponseCode("404");
}
prev
является экземпляром родительского SampleResult, смотрите JavaDoc для всех доступных методов и полей. JMeter предоставляет еще несколько утверждений, возможно, вам даже не придется использовать эти элементы JSR223
Что касается отслеживания «хороших» и «плохих», то по завершении теста вы можете использовать, например, прослушиватель сводного отчета или даже создать панель управления отчетами HTML, которая будет содержать сводную информацию и несколько хороших диаграмм.