Как сгруппировать ответы в отчете по исключениям / утверждениям во время выполнения теста JMeter - PullRequest
0 голосов
/ 15 февраля 2019

Во время теста у меня есть 3 типа исключений из одних и тех же запросов (или могут быть и из разных).
Я хочу отсортировать и сгруппировать их в любом виде, чтобы увидеть, сколько каждого типаисключения есть.Я могу добавить подтверждение ответа для каждого типа исключения в ответе, но как я могу сгруппировать их в отчете?В идеальном случае я хотел бы получить:

  • DuplicateKeyException - 22% сэмплеров
  • NullPointerException - 5% сэмплеров
  • WorstEverException - 10% сэмплеров

Есть идеи, как это сделать?

1 Ответ

0 голосов
/ 18 февраля 2019

Я думаю, по крайней мере, 2 способа:

  1. Использовать Пример переменных свойство типа:

    • Извлечь тип исключения изответ, используя соответствующий постпроцессор и сохраните его в переменной JMeter с именем ie Exception
    • Добавьте следующую строку в user.properties файл:

      sample_variables=Exception
      
    • При следующем запуске теста в режиме командной строки без графического интерфейса, например:

      jmeter -n -t test.jmx -l result.csv
      

      , вы увидите дополнительный столбец с именем Exceptionимеющий значение исключения.Теперь вы сможете использовать LibreOffice Calc или Microsoft Excel для расчета процентов для определенного исключения

  2. Вы можете использовать JSR223 Listener , чтобы переименовать сэмплер в соответствии с возникшей исключительной ситуацией, соответствующий код будет выглядеть примерно так:

    if (!prev.isSuccessful()) {
        prev.setSampleLabel((prev.getResponseDataAsString() =~ "(\\w+)Exception")[0][1] as String)
    }
    

    , где prev - сокращение для родителя. SampleResult

    Приведенный выше код извлечет тип исключения из ответа (если сэмплер не выполнен, а тип исключения существует) и переименует сэмплер в соответствии с типом исключения.

    Более подробную информацию о скриптах Groovy можно найти в Apache Groovy - почему и как его использовать статья

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...