今天说说Jmeter如何压测的方法,小结一下。
一、先使用Jmeter写好压测接口的脚本,如图所示:
二、开始进行压测参数配置
1、基本设置:
(1)压测时间: 一般压测的时间是10-15分钟
(2)性能指标:
TPS :服务端每秒钟处理的请求数 越大越好
响应时间 :越短越好
指标:tps要达到多少 ,响应时间要达到多少 ,并发数是多少
(2)在线程里设置如下:
2、压力测试场景设置
一般我们在做压力测试的时候,分单场景和混合场景,单场景也就是咱们压测单个接口的时候,多场景也就是有业务流程的情况下,
比如说一个购物流程,那么这样的场景就是混合场景,就是有多个接口一起来做操作。
(1)单场景,一个请求就可以了
(2)混合场景,多个请求
(3)压测时间,一般场景都是运行10-15分钟,如果是做疲劳测试的话,可以压一天或者一周,根据具体的情况来定
3、压力测试数据准备
在做压测的时候,数据量少和数据量大的情况下,测试的结果是不一样的。
所以,我们在设计场景的时候是要考虑到这种情况的,要测试数据库中数据量大和数据量小的情况,如果是要测试数据量大的情况下,就要造数据了,造数据可以使用jmeter,操作数据库来造数据,也可以使用python连接数据库,批量的造数据。
4、查看结果关注的几个指标
(1) tps是每秒钟处理的请求数,也就是指服务器的处理能力,tps越高说明服务器处理能力越好
(2) 响应时间,也就是每个请求的处理时间
(3) 并发用户数 也就是多少并发
5、压力测试结果查看
那我们在jmeter中怎么查看这些结果呢,就需要添加一个聚合报告
三、Linux下运行jmeter压力测试
我们在做测试的时候,有时候要运行很久,公司用的测试服务器一般都是linux,就可以运行在linux下面,linux下面不能像windows一样有图形化界面,那怎么运行脚本呢,就先在windows上把脚本做好,然后在linux下运行即可,linux下运行jmeter是在jmeter的bin目录下的jmeter.sh这个shell脚本:
sh jmeter.sh -n –t a.jmx -l res.jtl
各参数的含义:
-n: 代表以没有图形化界面启动
-t: 代表后面是测试脚本
a.jmx: 也就是我们做好的jmeter脚本
-l: 代表测试结果 res.jtl就是测试结果文件
查看结果的话,在查看结果树视图中导入这个res.jtl就可以查看到测试结果了
四、Jmeter添加负载机
我们在压测的时候,可能并发比较大, 一台机子已经启动不了那么多并发了,这个时候我们就要使用多台机子一起来发压力,
1、先在其他的负载机(另外的电脑)上启动jmeter-server
windows:jmeter-server.bat
mac,linux: jmeter-server.sh
注: 主控机就是脚本跑起来的机器,负载机就是需要别外的机器一起工作来发送请求的机器
2、修改主控机jmeter的配置文件,找到remot_hosts,然后把负载机的ip加入到里面就好了
remot_hosts=127.0.0.1,192.168.1.2:1099,192.168.1.3:1099
默认jmeter-server的端口号是1099,如果说负载机上的端口号改了,那么你在这里也得改
3、启动时候要选择远程全部运行
如果有参数化文件,那么在负载机同样的位置上也得有一个参数化文件
来源:oschina
链接:https://my.oschina.net/u/4347749/blog/4036071