jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

 一、jmeter中使用命令生成测试报告

  JMeter虽不像Loadrunner那样,提供了强大的图表分析功能,但是jmeter(必须是jmeter3.0以上版本)中同样提供了自动生成html测试报告的方法,使用如下命令:

命令:jmeter  -n  -t  [jmx file]  -l  [results file]  -e  -o   [Path to web report folder]

-n ---- 非GUI模式执行JMeter

-t  ---- 测试计划保存的路径及文件名

[jmx file] ---- 测试计划保存的路径及.jmx文件名,路径可以是相对路径也可以是绝对路径,它依赖于DOS中当前目录,如果DOS中当前目录在C盘AA目录下,测试计划.jmx文件保存在E盘BB目录下,那么应该写绝对路径:E:\BB\xx.jmx;如果DOS中当前目录在E盘AA目录下

-l  ----  保存生成测试结果的文件

 [results file] ---- 保存生成测试结果的文件,jtl文件格式

-e  ---- 测试结束后,生成测试报告

-o  ---- 存放生成测试报告的路径

[Path to web report folder] ---- 存放生成测试报告的路径,它可以是相对路径也可以是绝对路径,也是依赖于DOS中当前目录,如果需要保存到DOS中当前目录中,那么就直接写相对路径;如果不保存在DOS中当前目录中,那么就必须绝对路径。如:DOS中当前目录在C盘AA目录下,而测试报告要放在 E盘report目录下,那么应该写绝对路径:E:\report,那么测试报告就会保存在E:\report目录***意:report是一个自定义的目录,原先在F盘中是没有report这个目录的,使用命令时相当于同时自动在F盘下自动新建了一个report目录

举例说明:

DOS当前目录是:E:\    注意:DOS当前的目录必须是jmeter.log所在的目录或jmeter.log所在盘的根目录下,否则会提示无法打开jmeter.log文件。如果启动jmeter是用DOS命令启动的,那么jmeter运行时的日志文件是保存在DOS命令启动时的当前目录下,所以在生成测试报告时,必须用启动时的当前目录;如果用jmeter.bat启动时,那么生成测试报告的当前目录可以是jmeter.log所在盘的根目录下或jmeter.log所在的目录下;

[jmx file]目录在:F:\member.jmx

定义[results file]为:E:\results.jtl

定义[Path to web report folder]为: E:\report

使用命令:jmeter -n -t  E:\member.jmx  -l  results.jtl  -e  -o  E:\report

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

注意:report、results.jtl 原先都是不存在的,如果在使用命令时,report、results.jtl已存在,那么必须用先删除,否则在运行命令时就会报错。

可以在DOS中使用命令来删除

删除整个目录:rd  /s /q  [盘符:][路径名][子目录名]

                           /s ---- 表示删除该目录下所有遍历的子目录和文件

                           /q ---- 表示删除目录时不提示确认,直接删除

删除文件:del  /q  [盘符:][文件名]

可以写一个bat批处理命令,就不需要每次都输入命令了。

在DOS窗口,看到end of run 就表示已经生成测试报告了,到E盘中查看report目录,可以看到下图中4个文件

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

二、测试报告分析

打开index.html,就可以看到页面左侧有下图中三个目录

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

1、Dashboard

(1)Test and Report informations(测试和报告信息)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

Source file ---- 生成报告的源文件

Start Time ---- 开始时间

End Time ---- 结束时间

 

(2)APDEX (应用性能指标),计算每笔交易APDEX的容忍和满足阈值基于可配置的值,范围在 0-1 之间,1表示达到所有用户均满意

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

T(Toleration threshold):容忍或满意阈值

F(Frustration threshold):失败阈值

 

(3)Requests Summary(请求总结),成功与失败的请求占比,KO指失败率,OK指成功率

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

(4)statistics(数据分析),类似于jmeter聚合报告  

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

Lable --- 请求名称

Samples ---- 请求数目

KO ----- 失败请求数目

Error% ----  错误率(测试中出现错误的请求的数量/请求的总数)

Average ---- 响应时间平均值

Min ---- 最小响应时间

Max ---- 最大响应时间

90th pct  ----- 90%用户响应时间

95th pct ---- 95%用户响应时间

99th pct ----- 99%用户响应时间

Throughput ---- 吞吐量

Received ---- 每秒从服务器端接收到的数据量

Sent ---- 每秒从服务器发出的数据量

(5)Errors(错误情况)

(6)Top 5 Errors by sampler(采样器的5大错误)

 

2、第二个目录Chart(图表),它包括Over Time(时间变化) 、Throughput(吞吐量) 、Response Times(响应时间)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

(1)Over Time 中又包括下图中所示

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

1)Response Times Over Time(响应时间变化曲线),类似于JMeter Plugins上的[email protected] - Response Times Over Time

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

2)Response Time Percentiles Over Time (successful responses)  (成功响应时间百分比),类似于jmeter聚合报告中的Min、Max、90%、95%、99%

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

3)Active Threads Over Time(活动线程时间变化曲线图),随着时间变化,每个时间节点上的活动线程数

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

4)Bytes Throughput Over Time(字节吞吐量时间变化曲线图),蓝色为每秒发送字节数,黄色为每秒接收字节数

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

5)Latencies Over Time(延迟时间曲线图),记录的是客户端发送请求完成后,服务器端返回请求之前的这段时间,在高并发场景或者业务强数据一致性场景,延时是个很严重的影响因素

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

6)Connect Time Over Time(连接时间变化曲线图),随着时间变化,每个时间节点花费在连接上的平均时间

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

(2)Throughput(吞吐量)包括如下图所示

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

1)Hits Per Second(每秒点击率),类似于JMeter Plugins上的[email protected] - Hits per Second

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

2)Codes Per Second(每秒状态码数量)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

3)Transactions Per Second(每秒事务数),即TPS,是性能测试中很重要的一个指标,它是用来衡量系统处理能力的一个重要指标,类似于JMeter Plugins上的[email protected] - Transactions per Second

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

4)Total Transactions Per Second(每秒总事务数)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

5)Response Time Vs Request(响应时间点请求的成功或失败数)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

6)Latency Vs Request(延迟时间点请求的成功或失败数)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

(3)Response Times(响应时间)包括如下图所示

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

1)Response Time Percentiles(响应时间百分比)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

2)Response Time Overview(响应时间概述)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

3)Time Vs Threads(平均响应时间和线程数的对应变化曲线)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

4)Response Time Distribution(响应时间分布)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

 

三、配置测试报告

     JMeter3.0在bin目录新增了reportgenerator.properties文件保存了所有关于图形化HTML报告生成模块的默认配置,要变

更配置,建议不要直接编辑该文件,而是推荐在user.properties中去配置和覆盖。

    1、user.properties中配置,基本配置都是以jmeter.reportgenerator.为前缀的

      (1)定义采样点粒度(overall_granularity)

  user.properties中overall_granularity(采样点粒度)默认为60000ms,如下图

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

通过我们测试过程中,需要更小的粒度,如2秒,所以在上图中将60000修改为2000,也可以在文档末性加上jmeter.reportgenerator.overall_granularity=2000;

注意:基本配置都是以jmeter.reportgenerator.为前缀的 

     (2)定义报告的标题(report_title)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

    (3)定义Apdex评估中满意的阈值(单位ms)(apdex_satisfied_threshold)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

   (4)定义Apdex评估中可容忍的阈值(apdex_tolerated_threshold)

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

  (5)修改响应时间的百分比

jmeter.properties中,有三个默认的响应时间的百分比:

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

如果需要修改这三个默认值,可以在user.properties文档末尾加上这三个字段名称,并重新赋值

2、修改图表或html报告的页面标题

    JMeter的HTML报告生成时是使用了固定的模板,模板文件路径为./bin/report-template,进入该目录可以看到报告的每个

页面都有一个.fmkr模板文件,包括index.html.fmkr和./content/pages路径下的几个文件,可以利用这几个文件,修改对应的

名称。

    html报告的页面标题默认为Apache JMeter Dashboard,如下图所示

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

如果想改为这个页面标题,可以通过user.properties中的jmeter.reportgenerator.report_title来修改,通过这种方式来修改,那改变的是所有的页面标题;

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

     如果通过修改.fmkr文件中的title标签的双引号内的值,<title>${reportTitle!"想要设置的title"}</title>,那么修改的单独页面的标题;

图表的名称,可以在下面路径中进行修改

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

如修改响应时间,打开ResponseTimes.html.fmkr,修改title标签的双引号内的值

jmeter中使用命令自动生成html测试报告、测试报告分析及配置测试报告

3、配置html测试报告的默认存放路径(jmeter.reportgenerator.exporter.property.output_dir ),注意:使用命令时,-o选项

是可以覆盖该配置的路径的;

 
————————————————
版权声明:本文为CSDN博主「馨若梦」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_24394093/article/details/90732577