当我们拿到了jmeter测试结果之后,我们应该如何去看待它们呢?它们又是怎么来的呢?
一、Listener的使用
用过LoadRunner的人应该都知道,LoadRunner会为我们提供一大堆图标和曲线。但是在Jmeter里,我们只能找到几个可怜的Listener来方便我们查看测试结果。但是,对于初学者来说,一些简单的结果分析工具可以使我们更容易理解性能测试结果的分析原理。所以,千万别小看这几个简单的Listener啊。
A.Aggregate Report 聚合报告

我们可以看到,通过这份报告我们就可以得到通常意义上性能测试所最关心的几个结果了。
Samples -- 本次场景中一共完成了多少个Transaction
Average -- 平均响应时间
Median -- 统计意义上面的响应时间的中值
90% Line -- 所有transaction中90%的transaction的响应时间都小于xx
Min -- 最小响应时间
Max -- 最大响应时间
PS: 以上时间的单位均为ms
Error -- 出错率
Troughput -- 吞吐量,单位:transaction/sec
KB/sec -- 以流量做衡量的吞吐量
B.View Results Tree 以树状列表查看结果

通过这个Listener,我们可以看到很详细的每个transaction它所返回的结果,其中红色是指出错的transaction,绿色则为通过的。
如果你测试的场景会有很多的transaction完成,建议在这个Listener中仅记录出错的transaction就可以了。要做到这样,你只需要将Log/Display:中的Errors勾中就可以了。
二、.jtl文件的分析
在性能测试过程中,我们往往需要将测试结果保存在一个文件当中,这样既可以保存测试结果,也可以为日后的性能测试报告提供更多的素材。
Jmeter中,结果都存放在.jtl文件。这个.jtl文件可以提供多种格式的编写,而一般我们都是将其以csv文件格式记录,这样做是因为csv文件格式看起来比较方便,更重要的是这样做可以为二次分析提供很多便利。
我这里所说的二次分析是指除了使用Listener之外,我们还可以对.jtl文件进行再次分析。
a.设置jtl文件格式
我们从jmeter官方网站中下载下来的Jmeter解压后是可以直接使用的。但是,使用默认配置生成的jtl文件内容并不能满足我们的需要。于是我们必须进行必要的设置。在2.2版本中,如果要修改jtl设置必须要到jmeter.properties文件中设置;但是在2.3版本中,我们只需要在界面上设置就可以了。你只需要选择某个Listener,点击页面中的configure按钮。此时,一个设置界面就会弹出来,建议多勾选如下项:Save Field Name,Save Assertion Failure Message。
b.jtl文件中的各项
经过了以上设置,此时保存下来的jtl文件会有如下项:
timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,Latency
请求发出的绝对时间,响应时间,请求的标签,返回码,返回消息,请求所属的线程,数据类型,是否成功,失败信息,字节,响应时间
其中聚合报告中的,吞吐量=完成的transaction数/完成这些transaction数所需要的时间;平均响应时间=所有响应时间的总和/完成的transaction数;失败率=失败的个数/transaction数
温馨提示:在jmeter2.2和2.3版本中,都存在的一个问题是当我们重新打开jmeter,使用某个Listener来查看jtl文件时,jmeter是会报错的。因此当你使用命令行方式完成了一个场景的测试后,你得到的只是一堆保存在jtl文件中的原始数据。所以知道聚合报告中的各项的来源是可以方便大家摆脱测试工具来进行结果的分析。
总的来说,对于jmeter的结果分析,主要就是对jtl文件中原始数据的整理,我是使用一些小脚本进行相关的分析的,不知道你打算怎么做呢?
反正实践后,你总能找到一条属于自己的数据分析之路。
测试结果的分析说明
说明:
Label:每个 JMeter 的 element (例如 HTTP Request )都有一个 Name 属性,这里显示的就是 Name 属性的值
#Samples:表示你这次测试中一共发出了多少个请求,我的测试计划模拟 10 个用户,每个用户迭代 10 次,因此这里显示 100
Average:平均响应时间 —— 默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以 Transaction 为单位显示平均响应时间
Median:中位数,也就是 50 %用户的响应时间
90% Line: 90 %用户的响应时间
Min: 最小响应时间
Max: 最大响应时间
Error%:本次测试中出现错误的请求的数量 / 请求的总数
[NextPage]
Throughput:吞吐量 —— 默认情况下表示每秒完成的请求数( Request per Second ),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
KB/Sec:每秒从服务器端接收到的数据量,相当于 LoadRunner 中的 Throughput/Sec
我分别模拟10、25、50、75和100个用户并发访问该页面,根据报告所得测试结果作出如下统计。注:时间单位是ms

用户数 #Samples Average Median 90%Line Min Max Error% Throughput KB/Sec
10 642 672 688 125 125 719 00.0 14.8/sec 221.15
25 250 1620 1687 1750 250 1781 00.0 14.5/sec 217.14
50 500 3319 3438 3578 281 3657 00.0 14.2/sec 212.02
75 750 4887 5109 5584 328 7094 00.0 14.5/sec 216.67
100 1000 6244 6485 6672 250 6844 00.0 15.1/sec 225.43
一般情况下,当用户能够在2秒以内得到响应时,会感觉系统的响应很快;当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;当用户在5-10秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受;而当用户在超过10秒后仍然无法得到响应时,会感觉系统糟透了,或者认为系统已经失去响应,而选择离开这个Web站点,或者发起第二次请求。故该系统的用户信息查询信息页面的在10到25人并发访问时,系统响应速度很快,25人到50人并发访问时速度还可以,50人到100人并发访问就比较慢了。
分享到:
相关推荐
4. **监听器(Listener)**:监听器收集测试结果并显示,如表格查看结果、图形结果,用于分析性能指标,如吞吐量、响应时间等。 5. **断言(Assertion)**:断言用于验证响应结果是否符合预期,确保测试的准确性。 ...
### 配置Jmeter测试Oracle连接数 在IT领域中,性能测试对于确保应用程序或系统的稳定性和可靠性至关重要。Apache JMeter是一款广泛使用的开源负载测试工具,它可以用来测试静态和动态资源(例如静态文件、Java小...
JMeter的监听器不仅可以实时显示测试结果,还能保存数据,生成详细的测试报告。比如,我们可以利用“CSV Data Set Config”将测试结果导出为CSV文件,然后用Excel或其他工具进一步分析。"jmeter-压力测试报告-超细....
*测试结果可以通过JMeter的监听器(Listener)来实时监控和分析。 *可以根据测试结果来优化Web应用的性能和可靠性。 使用JMeter测试Web应用可以模拟多种测试场景,测试Web应用的性能和可靠性,并提供了方便的测试...
"JMeter性能测试-day06-all"可能讲解了结果分析和报告的生成,JMeter的监听器如聚合报告、响应时间图等可以帮助分析测试结果,找出性能问题。同时,可能也会介绍如何自定义报告格式,以便于分析和分享。 最后,...
JMeter会显示测试结果,通过分析这些结果,我们可以评估Java服务在不同负载下的性能表现,找出可能的瓶颈。 关于压缩包中的“TestRsaJmeter”,可能包含了一个实际的JMeter测试示例,涉及到RSA加密技术的测试。RSA...
#### 五、分析测试结果 - **查看结果树**:检查每次请求的具体响应,验证是否符合预期。 - **聚合报告**:通过统计信息判断登录接口的整体性能表现。 - **图形结果**:直观地查看响应时间分布情况。 #### 六、总结 ...
【JMeter 优化测试报告模板】是一份专为性能测试设计的报告模版,它针对JMeter工具进行了定制,旨在帮助测试人员系统性地记录、分析和展示JMeter测试的结果,以便于理解应用的性能瓶颈并进行优化。JMeter是一款开源...
【JMeter测试教程文档PDF】概述 Apache JMeter是一款强大的开源测试工具,...JMeter教程文档PDF将深入讲解如何利用这款工具进行有效的性能测试,包括设置参数、构建测试计划和分析结果,为测试人员提供宝贵的指导。
总的来说,JMeter性能测试报告提供了全面的性能测试分析,包括测试目标、测试环境、执行的测试类型以及详细的测试结果,为优化和提升系统性能提供了依据。通过这样的报告,测试工程师能够深入理解系统的性能瓶颈,...
**JMeter 测试结果分析** 测试结果中的各项指标可以帮助我们理解系统的性能表现: - **#Samples**:表示发出的总请求数。 - **Average**:平均响应时间,即所有请求的平均响应时间。 - **Median**:中位数响应时间...
Jmeter还提供了多种插件和监听器来收集测试结果,并进行分析。 描述中表明本文档是一份详尽的指南,旨在通过一系列步骤展示如何从零开始使用Jmeter测试工具进行翻译功能的测试,涵盖了从创建测试计划到分析返回结果...
- 添加监听器,如View Result Tree和Summary Report,以便分析测试结果。 2.2 测试环境 - 客户端:LZD-20180612EYJ,Win 7系统,配备酷睿 i5-7400处理器和16GB内存。 - 服务端:iZnpj215qhovuZ,Windows Server ...
6. 设置监听器:记录和分析测试结果,例如“View Results Tree”可以查看每个请求的详细信息,“Summary Report”提供汇总数据。 三、测试Web服务接口的注意事项 1. 参数化:对于需要动态参数的接口,使用“CSV ...
5. 测试结果与分析 根据测试数据,绘制出性能图表,比如吞吐量-并发用户曲线、延迟分布直方图等,分析在不同负载下的系统性能变化。同时,对比ActiveMQ官方宣称的性能指标,评估其实战表现。 6. 结论与建议 基于...
4. 添加监听器:包括“察看结果树”、“图形结果”和“聚合报告”,这些监听器可以帮助观察和分析测试结果,包括每个请求的详细信息、图表化的性能数据以及统计报告。 完成测试计划后,可以通过JMeter的运行按钮...
BadBoy是一款免费的Web录制工具,它简化了创建复杂的JMeter测试脚本的过程。首先,你需要访问BadBoy的官方网站或第三方软件库下载并安装该软件。 **b. 启动BadBoy软件** 安装完成后,双击BadBoy图标启动软件。界面...
TestDubbo文件可能包含了作者的JMeter测试计划文件,通过导入这个文件,我们可以直接在JMeter中运行和分析测试结果,从而节省了从零开始构建测试计划的时间。 总的来说,使用JMeter测试Dubbo服务是一项技术性强且...
Jmeter的丰富元件库使得它能够处理复杂的测试场景,例如采样器(Sampler)用于发送请求,断言(Assertion)验证响应,定时器(Timer)控制请求间隔,监听器(Listener)收集并显示测试结果。此外,Jmeter还支持...
监听器则用于收集和展示测试结果,如聚合报告、视图结果树等,帮助我们分析性能瓶颈和失败原因。 最后,为了更好地模拟真实场景,我们还可以引入思考时间(Think Time),这是用户在完成一项操作后,到开始下一项...