Jmeter之测试报告
Posted ~安妮的_BLOG~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter之测试报告相关的知识,希望对你有一定的参考价值。
当我们完成测试后,需要通过报告来查看测试结果
一、聚合报告
Label:每个JMeter的element的Name值。例如HTTP Request的Name
#Samples:发出请求数量。例如:如第三行记录,模拟20个用户,循环100次,所以显示了2000
Average:平均响应时间(单位:)。默认是单个Request的平均响应时间,当使用了Transaction Controller时,也可以以Transaction为单位显示平均响应时间
Median:中位数,也就是50%用户的响应时间
90%Line:90%用户的响应时间
95%Line:95%用户的响应时间
99%Line:99%用户的响应时间
注:为什么要有*%用户响应时间?因为在评估一次测试的结果时,仅仅有平均事物响应时间是不够的。假如有一次测试,总共有100个请求被响应,其中最小响应时间为0.02秒,最大响应时间为110秒,平均事务响应时间为4.7秒,你会不会想到最小和最大响应时间如此大的偏差是否会导致平均值本身并不可信?
我们可以在95 th之后继续添加96/ 97/ 98/ 99/ 99.9/ 99.99 th,并利用Excel的图表功能画一条曲线,来更加清晰表现出系统响应时间的分布情况。这时候你也许会发现,那个最大值的出现几率只不过是千分之一甚至万分之一,而且99%的用户请求的响应时间都是在性能需求所定义的范围之内的;最低响应时间的值出现几率是很小的,实际99%的用户请求响应时间都要20000+。
Min:最小响应时间
Max:最大响应时间
Error%:本次测试中出现错误的请求的数量/请求的总数
Throughput:吞吐量。默认情况下标示每秒完成的请求数(具体单位如下图)
KB/sec:每秒从服务器端接收到的数据量。
压测结果的分析
二、邮件观察仪
邮件观察仪:在线程跑失败或者成功时,可以设置是否发送邮件给对应的人员。
1.添加一个邮件观察仪
2.填写基本内容
Message中 :
From代表,发件人
Address代表 收件人
Success Limit 代表成功次数大于x时发送邮件
Failure Limit 代表失败事务大于4时,发送邮件
SMTP sever :
Host 填写邮件服务器名称
Login发件人的邮箱地址
点击TestMail 测试下是否可以发送成功,就可以投入使用了
3、生成html格式报告
前面已经介绍, 如果要做性能测试,需要在GUI上设计好你的Test Plan,设置各种场景和负载值,包括多少个线程,多少个用户,循环多少次、断言。设置好了保存,然后用命令行去启动性能测试,查看相关测试结果。
如下案例:
1. 打开图像界面,新建一个Thread Group
2. 新建三个Http Request,分别是百度新闻首页,和百度新闻财经,百度新闻体育
3. 添加一个Assertion,选择response assertion
4. 添加一个View Results Tree.
5. 总体界面如下
6. Thread Grouo设置如下
这里,你在图形界面的时候,最好设置都是1,测试通过后,再改成多个用户,然后保存本地xx.jmx文件
7. 三个Http请求分别如下
8. Response Assertion 设置如下
9. 保存到本地,关闭JMeter
本地先在桌面创建一个文件夹:baidu-reports,用来保存HTML报告
10. cmd启动性能测试
cmd 先要cd到jmeter的bin目录,然后输入以下命令:
jmeter -n -t C:\\Users\\Anne\\Desktop\\jmeter\\baidu.jmx -l C:\\Users\\Anne\\Desktop\\html.csv -e -o C:\\Users\\Anne\\Desktop\\baidu-reports
三个路径依次是:xxx.jmx文件路径,输出xxx.csv文件路径,要保存的http report的文件路径。
11. 查看HTTP 报告
在桌面的HttpReport文件夹,生成了多个文件
对应的html文件,就是测试报告,打开过后就就可以看到测试结果
PS:补充一下,CSV文件以及HTML文件必须是不存在的,不然无法生存报告
以上是关于Jmeter之测试报告的主要内容,如果未能解决你的问题,请参考以下文章