一、性能测试是什么?
性能测试定义:指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
二、Jmeter简介
我们为什么使用Jmeter?
开源,免费,基于Java编写,可集成到其他系统可拓展各个功能插件
支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放,
可在Linux,Windows,Mac上运行,支持多协议
Jmeter的作用
1. 接口测试 postman/jmeter
2. 性能测试 jmeter
3. 数据库测试
安装JAVA环境
进入官网:http://jmeter.apache.org/
2.选择进行下载,下载下来为一个压缩包,解压即可。
3.开始配置环境变量了。在系统变量框,点击“新建”,建立一个变量:JMETER_HOME,值为你解压的jmeter安装路径。我的安装路径是在C盘,这个路径根据自己实际安装路径进行填写。然后点击确定保存即可
4.配置classpath变量,没有的话也要按照上面步骤进行新建,有的话直接进行选中,点击编辑即可。变量值固定为:%JMETER_HOME%libextApacheJMeter_core.jar;%JMETER_HOME%libjorphan.jar;%JMETER_HOME%lib/logkit-2.0.jar; 做完之后一定要保存,不确定的话可以直接点击确定按钮直到退到我的电脑页面
5.基本配置完成,然后验证一下是否配置正确,是否可用。首先进到你的jmeter安装路径,找到bin文件夹,点击进去,找到jmeter.bat,鼠标右键用管理员方式运行,或者直接双击打开,此时会弹出2个界面:1.个是命令窗口,使用jmeter的时候此命令窗口不能关,你缩小到电脑任务栏即可。2.还有一个界面是jmeter工作页面,你可以在里面进行相关的操作.具体如图
6.确认安装是否成功,双击jmeter.bat或者以管理员方式运行,页面如下:
7.jmeter的工作区域如下:,我们每次使用jmeter的首先打开方式就是进入bin文件下双击这个jmeter.bat,如果觉得麻烦,可以鼠标右键快捷方式发送电脑桌面,就会方便很多。
8、安装结束
一个HTTP请求有着许多的配置参数,下面将详细介绍: |
名称:本属性用于标识一个取样器,建议使用一个有意义的名称。 |
注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。 |
服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。 |
端口号:目标服务器的端口号。 |
方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。 |
Content encoding :内容的编码方式,默认值为iso8859 |
路径:目标URL路径(不包括服务器地址和端口) |
接下来我们要进行操作
一、首先我们来测试Jmeter流程
lable:对应每一个http请求,显示的是http请求的Name,如百度http请求name为baidu |
#Samples:表示这一次的测试中一共发出了多少请求,如上图所示,sougou和baidu的http请求每个都发出30个请求 |
Average:平均响应时间,指的是所有的请求的平均响应时间,如上图的30个请求的总的响应时间除以30得出的平均响应时间,默认的情况下是单个请求的平均响应时间,但当使用了“事务控制器”时,则以事物为单位显示平均响应时间 |
Median:中位数,也就是50%用户的响应时间 |
90%Line:90%用户的响应时间 |
Min:最小响应时间 |
Max:最大的响应时间 |
Error%:本次测试中出现错误的请求的数量/请求的总数,如上图所示,本次的测试中,sougou的http请求66.6%的请求出错,而baidu的请求则没有出错的请求 |
Throughput:吞吐量,默认情况下表示每秒完成的请求数,如上图所示,每秒完成的请求数分别为6.6个每秒,6.2个每秒 |
Recived KB/Sec:每秒从服务器端接收到的数据量,以kb为计算的单位 |
Thread Name:线程组名称
Sample Start: 启动开始时间
Load time:加载时长
Latency:等待时长
Size in bytes:发送的数据总大小
Headers size in bytes:发送数据的其余部分大小
Sample Count:发送统计
Error Count:交互错误统计
Response code:返回码
Response message:返回信息
Response headers:返回的头部信息
二、Jmeter循环控制器
这里我们以百度为例
事务控制器
三、 响应断言
JSON断言