您的位置:首页 > 其它

Jmeter:负载功能测试和性能测试

2017-09-23 15:26 330 查看
[本文大部分内容转载自:http://www.testclass.net/jmeter/]

Apache JMeter™应用开源软件,100%纯Java应用程序,设计用于负载功能测试和性能测试。它最初是为测试Web应用程序而设计的,但后来扩展到其他测试函数中。

Apache JMeter 功能包括:

能够加载和测试许多不同的应用程序/服务器/协议类型:
Web的HTTP,HTTPS(java,Nodejs,PHP,ASP.NET,…)
SOAP / REST Webservices
FTP 文件传输协议
Database via JDBC
LDAP
Message-oriented middleware (MOM) via JMS
邮件传输协议 - SMTP(S), POP3(S) 和 IMAP(S)
本地命令或Shell 脚本
TCP
Java Objects

全功能测试IDE,允许快速记录测试计划(来自浏览器或本地应用程序),构建和 调试。
基于Java开发,支持Linux、Windows、MAC OSX等平台。
可以生成完整的动态HTML报告。
通过从最流行的响应格式、HTML、JSON、XML或任何文本格式提取数据的能力,可以轻松地进行相关性。
全多线程框架允许多线程并发采样,同时通过不同的线程组进行不同功能的同时采样。
缓存和离线分析/重放测试结果。
高度可扩展内核。

一、Jmeter安装

首先,安装Java。
然后,下载Jmeter。
解压下载的apache-jmeter-3.2.zip包.
进入…\apache-jmeter-3.2\bin\解压目录,双击ApacheJMeter.jar启动(注:一定要配置Java环境)。

二、Jmeter测试计划中的元素

http://www.testclass.net/jmeter/jmeter-doc-03/

三、Jmeter与数据库

http://www.testclass.net/jmeter/jmeter-doc-06/

四、Jmeter与ftp

http://www.testclass.net/jmeter/jmeter-doc-07/

五、录制与回放

Web录制与回放: http://www.testclass.net/jmeter/record_and_replay/
APP录制与回放:
1.使用PC共享可供手机连接上网的WIFI,记录IP地址,填入HTTP代理服务器中的HTTPS Domains。
2.手机连接PC共享的WIFI,设置代理:手动+主机名(1中记录的IP地址)+端口8888(同HTTP代理服务器一致)
3.选择目标控制器,选择分组:每个组放入一个新的控制器,点击启动,如出现提示点击确定即可开始录制。

六、Jmeter结果分析

1. 查看结果树

Thread Name: 线程组名称
Sample Start: 启动开始时间
Load time: 加载时长
Latency: 等待时长
Size in bytes: 发送的数据总大小
1GB=1024MB,1MB=1024KB,1KB=1024Bytes
Headers size in bytes: 发送头大小
Body size in bytes: 发送数据的其余部分大小
Sample Count: 发送统计
Error Count: 交互错误统计
Response code: 返回码
Response message: 返回信息
Response headers: 返回的头部信息

2. 聚合报告

Label:请求类型,对应在测试计划下填写的请求名称。
Samples:当前发送到服务器的请求总数,对应图形报表中的样本数目。
Average:平均响应时间,计算方法是总运行时间除以发送到服务器的总请求数,对应图形报表中的平均值。
Median:中位数,也就是50%用户的响应时间,即图形报表中的中间值。
90%line:90%请求的响应时间值。
Min:服务器响应的最短时间。
Max: 服务器响应的最长时间。
Error%: 请求返回错误的百分比。
Throughput: 服务器每单位时间处理的请求数,对应图形报表中的吞吐量。
KB/sec: 每秒钟请求的字节数。

3. 图形结果

样本数目:总共发送到服务器的请求数 
最新样本:代表时间的数字,是服务器响应最后一个请求的时间 
吞吐量:服务器每分钟处理的请求数。是指在没有帧丢失的情况下,设备能够接受的最大速率。
平均值:总运行时间除以发送到服务器的请求数 
中间值:时间的数字,有一半的服务器响应时间低于该值而另一半高于该值。 
偏离:服务器响应时间变化、离散程度测量值的大小,或者换句话说,就是数据的分布。

4.用表格查看结果

Sample:每个请求的序号。
Start Time: 每个请求开始时间。
Thread Name: 每个线程组名称。
Label:请求类型,对应在测试计划下填写的请求名称。
Sample Time: 每个请求所花时间,单位毫秒。
Status: 请求状态,如果为勾则表示成功,如果为叉则表示失败。
如果Status为叉,那很显然请求是失败了,但如果是勾,也并不能认为请求就一定完全成功了,因为还得看Bytes的字节数是否是所请求网页的正常大小值,如果不是则说明发生了丢包现象,也不是完全成功。
Bytes: 请求字节数。
Latency: 等待时长。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: