当我们拿到了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人并发访问就比较慢了。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xiaojianpitt/archive/2009/11/17/4821554.aspx
分享到:
相关推荐
### 关于JMeter的知识点详解 #### 一、概述 JMeter是一款100%纯Java桌面应用程序,专为测试CS架构(客户端/服务器)的软件而设计。它不仅可以用于测试静态和动态资源(如静态文件、Java Servlets、CGI脚本、Java...
本文将深入探讨JMeter的使用方法、重要功能以及如何进行超细粒度的压力测试报告分析。 首先,JMeter是一款由Apache软件基金会开发的负载和性能测试工具,适用于Web应用、FTP服务器、数据库和其他协议的服务。它支持...
### JMeter监控CPU、内存与I/O流程 ...综上所述,通过合理利用JMeter及其扩展插件提供的监控功能,结合详细的性能数据分析,可以有效地帮助我们发现并解决系统中的性能瓶颈问题,提高系统的整体性能表现。
JMeter可以收集并展示关键性能指标,如吞吐量、响应时间和错误率,帮助分析系统瓶颈。 11. **自定义脚本**: 支持通过Java代码、BeanShell、JSR223脚本创建自定义逻辑,满足复杂测试需求。 12. **易用性**: ...
- **创建测试计划**:在JMeter界面中,可以创建新的线程组,定义请求类型(HTTP、FTP等),设置参数,配置监听器,以便收集和分析测试结果。 3. **JMeter的主要组件** - **线程组**:模拟并发用户的行为,设置...
"JMeter性能测试-day06-all"可能讲解了结果分析和报告的生成,JMeter的监听器如聚合报告、响应时间图等可以帮助分析测试结果,找出性能问题。同时,可能也会介绍如何自定义报告格式,以便于分析和分享。 最后,...
2. **性能监控**:JMeter 提供丰富的监听器组件,可以实时展示和记录测试结果,包括响应时间、吞吐量、错误率等关键指标,帮助分析系统瓶颈。 3. **数据可视化**:测试结果可以导出为CSV或XML格式,便于进一步分析...
Jmeter是基于Jave的,开放源代码的...试他们提供服务的受压能力,或者分析他们提供的服务在不同负 载条件下的总性能情况 Jmeter的工作原理:向服务器提交请求;从服务器获取请求返回 的结果 版本获取:官网地址 ...
综上所述,"jmeter5.5,linux版本测试"涵盖的内容包括了JMeter的安装、配置、测试计划创建、执行、结果分析以及安全和分布式测试等方面的知识,对于进行Web应用性能测试的专业人士来说是非常重要的。
本教程将详细讲解JMeter的附加安装、使用方法,以及如何进行性能测试的参数调优和数据分析。 首先,我们从“性能测试工具安装及使用.doc”开始,该文档应包含JMeter的基础安装步骤和使用指南。JMeter通常以可执行...
3. **日志分析**:JMeter测试过程中,可以将系统资源信息写入日志文件,然后使用如Logstash、Grafana等工具进行可视化分析。 在描述中提到的错误信息“Warning: file_get_contents...
在实际使用中,JMeter的脚本录制和回放功能可以帮助快速构建测试用例,而结果分析则能帮助我们找到性能问题并优化系统。 结合以上知识,我们可以看到"login"这个文件名可能是指登录功能的测试或者监控。在JMeter中...
总的来说,"JMeterPlugins-Extras"和"JMeterPlugins-Standard"是提升JMeter性能测试效率和分析能力的重要工具。它们不仅丰富了JMeter的功能,还使得测试过程中的监控和结果分析更加精准和直观。无论是对于开发者还是...
JMeter是一款开源的Java应用程序,用于执行各种负载测试、功能测试、性能测试和压力测试任务。JMeter主要是针对Web应用程序,但它也...6. 报告生成:JMeter提供了图表和其他自定义报告来分析测试结果和计算统计数据。
3. **可视化测试结果**:JMeter可以实时显示测试结果,如响应时间、吞吐量、错误率等,并可以生成图表和报告,便于分析性能瓶颈。 4. **插件支持**:JMeter有一个活跃的社区,开发了许多插件,用于增强其功能,如...
Apache JMeter是一款强大的性能测试工具,专为评估和分析服务器、网络或对象的性能而设计。这个"apache-jmeter-5.2.1"压缩包包含JMeter的5.2.1版本,这是一个稳定且功能丰富的发布,适用于各种性能测试场景。 ...
JMeter的工作原理是模拟多个并发用户执行特定的测试脚本,以此来模拟真实用户的行为,并收集服务器的响应数据,进而分析系统的性能指标,如吞吐量、响应时间、错误率等。这种模拟负载的方式对于评估系统在大规模并发...
Apache JMeter是一款广泛使用的开源负载测试工具,用于分析和测试软件性能,特别是Web应用。本文将详细介绍JMeter的安装、配置以及基本使用方法,帮助新手快速上手。 #### 二、JMeter简介 Apache JMeter是一款纯...
5. **定义监听器**:为了查看和分析结果,可以添加监听器,如“视图结果树”或“聚合报告”,来展示请求和响应的详细信息。 6. **运行测试计划**:保存并运行测试计划,JMeter将按照设定的参数向UDP服务发送数据,并...