如何配置JMeter 4.0报告以显示各Transaction的APDEX及统计指标
解决JMeter 4.0报告不显示各Transaction的APDEX及统计指标问题
我帮你排查下这个问题,大概率是你配置的样本过滤规则在起作用,咱们一步步来解决:
先分析你当前配置的问题
你在user.properties里设置了:
jmeter.reportgenerator.statistic_window = 2000 jmeter.reportgenerator.apdex_satisfied_threshold=1500 jmeter.reportgenerator.apdex_tolerated_threshold=3000 jmeter.reportgenerator.exporter.html.series_filter=^(Search|Order)(-success|-failure)?$ jmeter.reportgenerator.exporter.html.filters_only_sample_series=true
其中最后两个配置是关键:
series_filter:只匹配名称符合^(Search|Order)(-success|-failure)?$正则的采样器(也就是名字以Search或Order开头,后面可选跟-success或-failure的样本)filters_only_sample_series=true:让报告只显示符合上述过滤规则的样本系列
如果你的Transaction(测试里的采样器/事务控制器)名称不符合这个正则,就不会出现在APDEX和Statistics表格里,这就是你看不到对应指标的核心原因。
具体解决方案
1. 调整样本过滤规则
根据你的实际需求修改配置:
- 如果想显示所有Transaction:把
series_filter改成匹配所有的正则,同时可以保留或调整filters_only_sample_series:jmeter.reportgenerator.exporter.html.series_filter=.* jmeter.reportgenerator.exporter.html.filters_only_sample_series=true - 如果只想显示特定Transaction:修改正则来包含你的Transaction名称,比如你的Transaction还有
Login和Checkout,就改成:jmeter.reportgenerator.exporter.html.series_filter=^(Search|Order|Login|Checkout)(-success|-failure)?$ - 先验证是否是过滤问题:可以临时把
filters_only_sample_series改成false,这样即使不符合过滤规则的样本也会显示,生成报告看看是否能出现所有Transaction的指标。
2. 确保采样器名称符合规则
检查你测试计划里的采样器(比如HTTP请求、事务控制器)的名称,要和series_filter的正则匹配。比如正则要求开头是Search,那采样器名称就得是Search、Search-success这类,不能是Search_Product或者User_Search,否则不会被匹配到。
3. 重新生成报告
修改完配置后,记得:
- 重启JMeter(如果是GUI运行);如果是命令行生成报告,可以直接用参数覆盖配置,比如:
jmeter -n -t your_test_plan.jmx -l result.jtl -e -o report_folder -Jjmeter.reportgenerator.exporter.html.series_filter=.* - 重新运行测试并生成报告,查看APDEX和Statistics表格是否显示各Transaction的指标。
补充说明
JMeter报告里的APDEX和Statistics表格,是根据采样器的名称分组统计指标的,只要采样器名称能被series_filter匹配到,并且filters_only_sample_series的设置允许显示,就能正常展示每个Transaction的对应数据。你可以先从放宽过滤规则开始验证,再逐步调整到符合你需求的配置。
内容的提问来源于stack exchange,提问作者OTUser
相关产品推荐
相关产品推荐

