我有一个 JMetre 场景,我使用下面的结构
Thread Group
--Transaction Controller 1
----Module Controller 1 --> Simple Controller 1
--Transaction Controller 2
----Module Controller 2 --> Simple Controller 2
--Transaction Controller 3
----Module Controller 3 --> Simple Controller 3
TestFragment
-- SimpleController 1
---- Req 1
-- SimpleController 2
---- Req 2
-- SimpleController 3
---- Req 3
当我未在至少一个事务控制器上选中“生成父样本”时,生成的 HTML 报告会在仪表板中统计表的 TOTAL 选项卡中显示一些值。 (没有检查该值是否正确,但有一些值如下)
当所有事务控制器都选中“生成父样本”时,生成的仪表板的统计表显示“NaN”和不切实际的数字。
我在这里做错了什么?
我认为你应该设置以下属性:
jmeter.save.saveservice.subresults=true
如果您不希望子采样器出现在仪表板/统计表中,您可以将其过滤掉:
命令示例:
jmeter -Jjmeter.save.saveservice.subresults=true -Jjmeter.reportgenerator.exporter.html.series_filter="^(Transaction Controller 1|Transaction Controller 2|Transaction Controller 3)(-success|-failure)?$" -n -t test.jmx -f -l result.jtl -e -o dashboard
如果您想让更改永久生效 - 将上述值放入 user.properties 文件
更多信息:
无论您使用什么属性,jtl 文件中的事务控制器结果行将以“响应消息”列的“事务中的样本数”开头,这就是结果从总计计算中过滤掉的原因。
如果您编辑 jtl 中响应消息的值之一(将“事务中的样本数”替换为其他值),您将看到总计将采用此行的值,因为它将不再被过滤掉.