老鬼的博客 来都来啦,那就随便看看吧~
jmeter安装和使用
发布于: 2021-04-27 更新于: 2021-04-28 分类于:  阅读次数: 

一:介绍

1
2
jmeter是apache下的一个压测工具,用于web压测,可以有效的了解
我们编写的接口是否正常,以及接口的吞吐量和相应时间等信息。

二:下载

1.png

三:安装

3.1 基本配置

1
2
3
4
5
1.解压文件到某个目录下,我这里是:D:\my-tools\apache-jmeter-5.4.1
2.配置用户变量:JMETER_HOME = D:\my-tools\apache-jmeter-5.4.1
3.配置CLASSPATH,加入:.;%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar; %JMETER_HOME%\lib\jorphan.jar;
4.配置path,加入:%JMETER_HOME%\bin;
5.备注:如果提示jmeter不是内部或外部命令,则配置path直接用全路径:如:D:\my-tools\apache-jmeter-5.4.1\bin

2.png

3.2 汉化

1
2
找到jmeter安装目录下的bin下面的jmeter.properties,添加:language=zh_CN,
重启即可汉化。

5.png

3.3 安装Stepping Thread Group

1
2
3
Stepping Thread Group是可以设置递增线程数的插件,可以合理的设置并发数,
阶梯式的递增和递减,通过下面的下载地址,下载后解压,然后将 JMeterPlugins-Standard.jar包
放在jmeter安装目录apache-jmeter-4.0\lib\ext 下,重新启动jmeter即可使用。

3.png
4.png

3.4 基本按钮操作

14.png

四:使用Stepping Thread Group压测

4.1 创建测试计划

1
点击文件-新建

6.png

4.2 添加线程(用户)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
右键创建好的计划,添加-线程(用户)-jp@gc-Stepping Thread Group
参数释义:

This group will start 100 threads:设置线程组启动的线程总数为100个;

First,wait for N seconds:启动第一个线程之前,需要等待N秒;

Then start N threads:设置最开始时启动N个线程;

Next,add 10 threads every 30 seconds,using ramp-up 5 seconds:每隔30秒,在5秒内启动10个线程;

Then hold load for 60 seconds:启动的线程总数达到最大值之后,再持续运行60秒;

Finally,stop 5 threads every 1 seconds:每秒停止5个线程;

7.png
8.png

4.3 添加取样器Http请求

1
2
右键创建好的线程-添加-取样器-Http请求。
配置http请求的协议,ip,端口号,路径以及参数

9.png

4.4 添加响应断言

1
2
右键创建好的线程-添加-断言-响应断言。
响应断言可以设置哪些预期的结果是复合我们需求的,一般用状态码200.

10.png

4.5 添加-监听-查看结果树

1
2
右键创建好的线程-添加-监听-查看结果树。
结果树会显示每次响应的request和response信息。

11.png

4.6 添加-监听-聚合报告

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
右键创建好的线程-添加-监听-聚合报告,字段解释如下:
Label: 请求的名称,就是我们在进行测试的httprequest sampler的名称
样本: 总共发给服务器的请求数量,如果模拟10个用户,每个用户迭代10次,那么总的请求数为:10*10 =100次;
平均值: 默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,
以Transaction 为单位显示平均响应时间 ,单位是毫秒
中位数: 50%用户的请求的响应时间,中位数
90%百分比: 90%的请求的响应时间
95%百分比: 95%的请求的响应时间
99%百分比: 99%的请求的响应时间
最小值: 最小的响应时间
最大值: 最大的响应时间
错误%: 错误率=错误的请求的数量/请求的总数
吞吐量: 默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,
也可以表示类似 LoadRunner 的 Transaction per Second 数 ,可以计算此服务器每秒可以处理的请求数

接收KB/sec: 每秒从服务器端接收到的数据量
发送KB/sec: 每秒给服务器端发送的数据量

12.png

4.7 添加-监听-响应时间图

1
2
右键创建好的线程-添加-监听-响应时间图。‘
可以查看这次压测总的响应时间的图表。

13.png

4.8 其他

1
2
在一次测试中可以根据自己的实际需求添加自己想要的东西,这里
就不一一列举了。

五:如何同时压测多个接口

1
2
3
4
在我们创建好线程(用户)以后,我们可以添加多个HTTP请求,
添加几个就可以一并压测几个,如果多个请求的话,我们可以
设置http请求的默认值(添加-默认元件-HTTP请求默认值),
这样我们就可以统一管理http请求的默认了。

15.png

六:如何使用CSV Data Set Config引入变量

6.1 添加CSV Data Set Config

1
2
右键线程(用户) - 添加 - 配置元件 - CSV Data Set Config,
编写自己的文件,然后设置变量,编码等,最后设置HTTP请求的变量值。

1.png
2.png
3.png

test.csv文件案例

*************感谢您的阅读*************