JMeter聚合报告插件安装、子请求排除及百分位线配置问题
JMeter性能测试3项问题解决方案
问题1:Synthesis Report插件自动安装命令有效性确认
执行PluginManager.cmd install Synthesis Report无法完成自动安装。
- 原因:JMeter插件管理器靠唯一插件ID识别插件,不存在名称带空格的"Synthesis Report"插件ID,手动安装的Synthesis Report对应插件ID为
jpgc-synthesis - 正确自动安装命令:
PluginManager.cmd install jpgc-synthesis
- 执行说明:命令运行后会自动拉取插件及对应依赖包,安装完成后无需额外手动操作,即可正常调用JMeterPluginsCMD.sh生成聚合报告,不会再抛出
kg.apc.jmeter.vizualizers.AggregateReportGui类找不到的异常。
问题2:报告过滤子请求仅保留父事务样本配置
按以下两种场景选择配置即可实现需求:
- 场景1:从源头过滤,执行测试脚本时就不写入子请求数据
非GUI模式启动压测时,追加JVM参数-Jjmeter.save.saveservice.subresults=false,生成的JTL结果文件本身就不会包含事务控制器下的子请求条目,后续生成任何格式的报告都不会出现get call、get details这类子请求数据。注意要提前确认测试计划里事务控制器的generate the parent sample选项已正确勾选。 - 场景2:已生成包含子请求的JTL文件,生成报告时过滤
调用JMeterPluginsCMD生成CSV报告时,追加过滤参数:- 白名单模式:添加
--include-labels "LaunchApplication|BookRoom",通过正则匹配仅保留指定名称的父事务样本 - 黑名单模式:添加
--exclude-labels "get call|get details|fill details",通过正则匹配排除指定名称的子请求条目
标签名包含特殊字符时注意做正则转义即可。
- 白名单模式:添加
问题3:报告新增70%、75%响应时间百分位指标配置
按以下步骤操作即可:
- 打开JMeter安装目录下
bin/user.properties配置文件 - 追加如下配置项自定义百分位:
# 配置聚合报告、Synthesis Report展示的百分位 aggregate_rpt_pct1=70 aggregate_rpt_pct2=75 # 可按需保留默认的90/95/99百分位 aggregate_rpt_pct3=90 aggregate_rpt_pct4=95 aggregate_rpt_pct5=99 # 若需要生成原生HTML仪表盘报告时也展示对应百分位,追加以下配置 jmeter.reportgenerator.percentiles=70,75,90,95,99
- 保存配置后重启JMeter,后续无论是GUI界面查看报告,还是命令行生成CSV、HTML报告,都会自动展示70%、75%响应时间百分位指标。
内容的提问来源于stack exchange,提问作者MAX GRIMM
相关产品推荐
相关产品推荐

