JMeter命令行执行+生成HTML报告_jmeter生成报告(1)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

-t 测试文件 -> 要运行的 JMeter 测试脚本文件

-l 日志文件 -> 记录结果的文件
-R 远程执行 -> 远程执行机的IP(ip地址)如果有多个ip时,使用-R 192.168.2.170,192.168.2.171(分布式使用)

-r 远程执行 -> 在Jmter.properties文件中指定的所有远程服务器(分布式使用)

-H 代理主机 -> 设置 JMeter 使用的代理主机

-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号


##### **2.3、执行过程**


命令:jmeter -n -t C:\Users\yzs\Desktop\Unione\_performance.jmx -l report\03-result.jtl


![](https://img-blog.csdnimg.cn/img_convert/374556eda2eb58b169263828603ff263.png)


不在jmeter安卓目录执行脚本的前提是配置了jmeter的环境变量。


2.4、报告查看  
 上述的命令有测试结果保存到D:\report中,在GUI模式下查看测试报告:


1、在测试计划下,添加对应的测试报告元件,举例增加了:查看结果树、聚合报告


2、在“所有数据写入一个文件”,选择加载对应的结果文件


3、下面就会有对应的表格展示,具体见下图  
![](https://img-blog.csdnimg.cn/img_convert/a011f5b8311209d469157fabd434965d.png)


**2.5、命令行传递变量值**


设置线程组的线程数和循环次数。


注意格式:


${\_\_P(threadNum)}


${\_\_P(threadCount)}


其中P前面是两个下划线,()内就是变量名


![](https://img-blog.csdnimg.cn/img_convert/2d2e7f101a4b0f4a619533e249b4444d.png)


执行时,在命令行中用-J参数给变量赋值即可:


jmeter -n -t C:\Users\yzs\Desktop\Unione\_performance.jmx -J threadNum=10 -J threadCount=2 -l report\03-result.jtl


此次测试相当于:10个线程,循环2次,共计20个请求。


3、生成HTML报告


生成HTML报告有2种方式,一种是直接在命令行加上-o参数,另一种是已有jtl结果文件,运行命令生成报告


3.1、命令行直接生成报告


jmeter -n -t 【Jmx脚本位置】-l 【中间文件result.jtl位置】-e -o 【报告指定文件夹】  
 -e:测试结束后,生成测试报告  
 -o:指定测试报告的存放位置  
![](https://img-blog.csdnimg.cn/img_convert/fcc75dc97a7637c79999db53dffef721.png)


![](https://img-blog.csdnimg.cn/img_convert/8d3668abb63c88036b0211d47c08bb93.png)


 注意:-o后面跟的文件夹一定是**不存在的**或者是**空文件夹**


**3.2、已有jtl结果文件,运行命令生成报告**



jmeter -g【已经存在的.jtl文件的路径】-o 【用于存放html报告的目录】


![](https://img-blog.csdnimg.cn/img_convert/4d546c9961c772f66555e7e30b8baea6.png)


注意:经实操,windows系统上,以上2种方法都可以生成HTML测试报告,但是在Linux系统上第1种方法,没有生成报告,只有第二种方法才可以(具体原因后面在慢慢找吧)


****3.3、HTML报告注解****


用浏览器打开index.html


![](https://img-blog.csdnimg.cn/img_convert/7d2ae98bfc2330c36530b2111951099a.jpeg)


报告详解


Dashboard:(重点查看)  
 Test and Report informations:指的是测试和报告信息


File:测试结果的保存文件名称  
 Start Time:测试开始时间  
 End Time:测试结束时间  
 Filter for display展示过滤器  
 APDEX(Application Performance Index):应用程序性能满意度的标准


其中,


“Apdex”范围在0-1之间,1表示达到所有用户均满意,越接近1满意度越高  
 “toleration threshold”:耐受阈值(0.5秒)  
 “frustration  threshold”:挫败阈值(1.5秒)  
 Requests Summary:请求的通过率(OK)与失败率(KO),百分比显示


Statistics:数据分析,基本将Summary Report和Aggrerate Report的结果合并(平均响应时间、TPS在此查看)


Errors:错误情况,依据不同的错误类型,将所有错误结果展示


关于Apdex的补充:


性能指数,Apdex(Application Performance Index)是一个国际通用标准,Apdex 是用户对应用性能满意度的量化值。它提供了一个统一的测量和报告用户体验的方法,把最终用户的体验和应用性能作为一个完整的指标进行统一度量。下图表示为通用用户满意度区域,0代表没有满意用户,1则代表所有用户都满意。实际业务系统开发过程中,1是团队的追求目标。  
![](https://img-blog.csdnimg.cn/img_convert/24a66c51ac7e7daa095c26c6dc9eb742.png)


若所有请求的Apdex值都接近1,说明用户满意度优秀,也从侧面说明了服务器响应速度快。  
 通常而言,**最低要求超过0.5**,当然项目组可设定具体需求。


![](https://img-blog.csdnimg.cn/img_convert/10037e9976cbfa8128acfcc496377391.png)


Charts:(辅助分析)


主要有如下特点:  
 (1)将测试过程中经常使用的数据,用图表的形式展示,让测试结果更加直观  
 (2)每个图表数据,有两种展示形式  
 (3)支持请求样例过滤显示  
 (4)支持导出PNG图片格式


Over Time Charts:


Response Times Over Time:每秒钟响应时间,X轴表示的是系统运行的时刻,Y轴表示的是响应时间,F(X,Y)表示系统随着时间的推移,系统的响应时间的变化,可以看出响应时间稳定性  
 Bytes Throughput Over Time:字节接收与发送的数量,每秒传输字节吞吐量,表明Jmeter在测试时,随着时间推移发送和接收的字节数  
 Latencies Over Time:延迟时间  
 Throughput Charts:


Hits Per Second: 每秒点击率  
 Codes Per Second:每秒状态码数量  
 Transactions Per Second:每秒事务量  
 Response Time Vs Request:响应时间点请求的成功与失败数  
 Latency Vs Request:延迟时间点请求的成功与失败数  
 Response Times Charts:


Response Time Percentiles:响应时间百分比  
 Active Threads Over Time:激活线程数  
 Time Vs Threads:响应时间用户数, X轴表示的是活动线程数,也就是并发访问的用户数,Y轴表示的是响应时间,F(X,Y)表示在某种并发量的情况下,系统的响应时间是多少  
 Response Time Distribution:响应时间分布  
 3.4、HTML报告的自定义配置


JMeter3.0开始在bin目录新增了reportgenerator.properties文件保存了所有关于图形化HTML报告生成模块的默认配置,要变更配置,建议不要直接编辑该文件,而是推荐在user.properties中去配置和覆盖。


3.4.1总体配置


总体配置都是以jmeter.reportgenerator.为前缀,如:jmeter.reportgenerator.overall\_granularity=60000


overall\_granularity:定义采样点粒度,默认为60000ms,通常在稳定性以外的测试中,我们可能需要定义更细的粒度,比如1000ms,我们可以在user.properties文件末尾添加如下配置  
 # Change this parameter if you want to change the granularity of over time graphs.  
 jmeter.reportgenerator.overall\_granularity=6000  
 report\_title:定义报告的标题,我们可能需要将标题定义为实际测试项名称  
 apdex\_satisfied\_threshold:定义Apdex评估中满意的阈值(单位ms)  
 apdex\_tolerated\_threshold: 定义Apdex评估中可容忍的阈值  
        Apdext = (Satisfied Count + Tolerating Count / 2) / Total Samples


  
 另外,在jmeter.properties中,有关于集合报告中的三个百分位的默认值:


![img](https://img-blog.csdnimg.cn/img_convert/7fc6834dc4f45edf2c499278968c284c.png)
![img](https://img-blog.csdnimg.cn/img_convert/711acb14edf61d6f95071b02dcc95ba9.png)
![img](https://img-blog.csdnimg.cn/img_convert/6184debfb2e0e385409b65535c49d2d6.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**

-1715800022520)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值