win+R,输入cmd,打开jmeter所在bin目录,输入
一、如果没有.jtl文件,运行如下命令:
jmeter -n -t C:\Users\小闹\Desktop\测试计划.jmx -l result.jtl -e -o\D:\apache-jmeter-5.1.1\result
我们来看一下这条命令的参数:
-n :以非GUI形式运行Jmeter
-t :C:\Users\小闹\Desktop\测试计划.jmx 脚本路径
-l :result.jtl 运行结果保存路径(.jtl),此文件必须不存在
-e :在脚本运行结束后生成html报告
-o :D:\apache-jmeter-5.1.1\result 用于存放html报告的目录 (result为自己建的文件夹)
二、如果已经存在结果文件(.jtl),可运行如下命令生成报告
jmeter -g result.jtl -o /tmp/ResultReport
参数:
-g : result.jtl 已经存在的.jtl文件的路径。
-o :用于存放html报告的目录
无论采用哪种方式,执行完后会在执行的目录生成如下文件或文件夹:
双击打开index.html文件,就可以看到报告了。如图:
先看一下Dashboard中都有什么?
Test and Report informations:测试和报告信息: 测试结果保存文件/测试开始时间/测试结束时间/展示过滤器。
APDEX(Application Performance Index):应用程序性能满意度的标准,范围在 0-1之间,1表示达到所有用户均满意,可以在配置文件设置。
Requests Summary: 请求的通过率(OK)与失败率(KO),百分比显示
Statistics: 数据分析,基本将 Summary Report 和 Aggrerate Report 的结果合并
Errors: 错误情况,依据不同的错误类型,将所有错误结果展示
Top 5 Errors by sampler:Top5错误信息采样
接下来看一下Charts里的内容:
Charts里如图所示分为三大块:时间维度信息(Over Time)、吞吐量(Thorughput)、响应时间(Response Times)
Over Time
● Response Times Over Time脚本运行时间内响应时间分布曲线
● Response Time Percentiles Over Time (successful responses) 脚本运行时间内成功响应的请求,响应时间百分位
● Active Threads Over Time 脚本运行时间内的活动线程分布
● Bytes Throughput Over Time脚本运行时间内的吞吐量,单位是byte
● Latencies Over Time脚本运行时间内毫秒级的响应延时
● Connect Time Over Time脚本运行时间内平均连接时间
Throughput
● Hits Per Second (excluding embedded resources) 每秒点击数曲线
● Codes Per Second (excluding embedded resources)每秒状态码分布曲线
● Transactions Per Second 每秒事物数曲线
● Response Time Vs Request 响应时间中值与每秒请求数关系曲线
● Latency Vs Request 延迟时间中值与每秒请求数关系曲线
Response Times
● Response Time Percentiles毫秒级百分位响应时间曲线
● Response Time Overview 响应时间概述柱状图
● Time Vs Threads 活动线程与平均响应时间变化曲线
● Response Time Distribution响应时间分布图
如果需要从已有的结果文件CSV生成html报告,则需要配置jmeter.properties:
如果希望在Errors报告中展示更详细数据,需要确保如下配置:
使用已有的CSV日志文件生成报告
结尾彩蛋:
之前考虑过每次执行命令都要先去目录下清空报告文件夹和jtl,还要敲命令,很烦,后来想了一个方法,那就是写一个bat,每次执行bat都自动去清空之前的报告,然后执行命令
del是删除jtl,rd是删除报告文件夹,md是重建报告文件夹,最后执行命令生成报告。执行结果如下: