官网地址查阅:http://jmeter.apache.org/usermanual/generating-dashboard.html
最近在压测过程中使用 Generating Report Dashboard生成测试报告,快捷又方便。
第一章节:我来演示如何使用。
1、首先根据官网的配置,需要在jmeter.properties配置如下几个参数
2、配置好了以后就可以使用了。我这里以linux服务上执行命令为例。在no-gui的方式下使用jmeter命令压测并生成报告。如下
jmeter -n -t test.jmx(性能测试脚本) -r -l testResult.csv(测试监听结果文件) -e -o testReport(生成报告的文件夹名,不需要创建)
备注:命令参数说明如下
- -h 帮助 -> 打印出有用的信息并退出
- -n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
- -t 测试文件 -> 要运行的 JMeter 测试脚本文件
- -l 日志文件 -> 记录结果的文件
- -r 远程执行 -> 启动远程服务
- -H 代理主机 -> 设置 JMeter 使用的代理主机
- -P 代理端口 -> 设置 JMeter 使用的代理主机的端口号
(1)生成了测试结果文件和测试报告文件夹
(2)打开测试报告
(3)打开index.html后就呈现了首页,可以点击charts看更多的图表。
第二章节 我来讲讲那些坑
1、坑1:测试过程中我中断了测试,怎么生成测试报告
解决:没有生成报告是没有问题,可以用生成的结果问题,如上述步骤的testResult.csv就可以生成报告,命令是jmeter -g 结果文件 -o 测试报告文件夹,如下图
2、坑2:中断测试后使用测试结果文件生成测试报告的时候报错,怎么办
解决:在中断过程中,有部分的数据缺失了,所以需要手动删除最后一行的错误数据,如图
3、坑3:我用了很久发现表格里面的图表都是按1min的平均值统计的,这样颗粒度太大了,图表不是按秒钟显示散点图,对实际的压测结果偏差太大。如图点击率和响应时间。跟使用GUI界面压测结果完全不同。如下图1是GUI界面显示的,图2 是报告截图
报告页面的截图
解决:这个让我困惑了很久,虽然图表里面提示了统计的是一分钟内的“granularity 1min”,但是这样的图表有什么参考性了,完全没有。最好找到了配置saveservice.properties,可以配置散点图的颗粒度。如下图1是配置方法,图2是配置后生成的图表。
配置时间刻度
配置后生成的报告:
还有最后一个坑,就是加入了事物以后千万不要点击“Generate parent sample”