如何在 JMeter 测试 运行 期间按 exceptions/assertions 对报告中的响应进行分组

How to group responses in report by exceptions/assertions during JMeter test run

在测试期间,我从相同的请求中得到了 3 种类型的异常(或者也可能来自不同的请求)。
我想在任何类型的视图中对它们进行排序和分组,以查看每种类型的异常有多少。 我可以为响应中的每种类型的异常添加响应断言,但如何在报告中对它们进行分组? 在理想情况下,我想得到:

知道怎么做吗?

我至少想到了两种方法:

  1. 使用Sample Variables属性如:

    • 使用相关 Post-Processor 从响应中提取异常类型并将其存储到名为 Exception
    • 的 JMeter 变量中
    • 将下一行添加到 user.properties 文件:

      sample_variables=Exception
      
    • 下次您 运行 在命令行非 GUI 模式下进行测试,例如:

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

      您将看到一个名为 Exception 的额外列,其中包含异常值。现在您应该可以使用 LibreOffice Calc or Microsoft Excel 来计算特定异常的百分比

  2. 您可以使用JSR223 Listener来根据发生的异常重命名采样器,相关代码如下:

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

    其中 prev 是父 SampleResult

    的 shorthand

    以上代码将从响应中提取异常类型(如果采样器失败并且异常类型存在)并根据异常类型重命名采样器。

    您可以在 Apache Groovy - Why and How You Should Use It 文章

  3. 中找到有关 Groovy 脚本的更多信息