码迷,mamicode.com
首页 > 系统相关 > 详细

jemter压力测试准备、分布式部署以及Linux运行jemter脚本

时间:2019-03-25 21:57:58      阅读:866      评论:0      收藏:0      [点我收藏+]

标签:图形化界面   绝对路径   响应时间   测试的   用户   简单的   目录   win   其他   

一、一般我们在做压力测试的时候,分单场景和混合场景,单场景也就是咱们压测单个接口的时候,多场景也就是有业务流程的情况下,比如说一个购物流程,那么这样的场景就是混合场景,就是有多个接口一起来做操作。

1、单场景,一个请求就可以了

2、混合场景,多个请求

3、压测时间,一般场景都是运行10-15分钟,如果是做疲劳测试的话,可以压一天或者一周,根据具体的情况来定

技术图片

 

二、 压力测试的准备

在做压测的时候,数据量少和数据量大的情况下,测试的结果是不一样的,所以,我们在设计场景的时候是要考虑到这种情况的,要测试数据库中数据量大和数据量小的情况,如果是要测试数据量大的情况下,就要造数据了,造数据可以使用jmeter,操作数据库来造数据,也可以使用python连接数据库,批量的造数据。

三、压力测试的结果查看

1、tps是每秒钟处理的请求数,也就是指服务器的处理能力,tps越高说明服务器处理能力越好

2、响应时间,也就是每个请求的处理时间

3、并发用户数 也就是多少并发

技术图片

技术图片

 四、分布式部署压力测试

我们在压测的时候,可能并发比较大, 一台机子已经启动不了那么多并发了,这个时候我们就要使用多台机子一起来发压力,就要添加压力机,添加压力机怎么添加呢,首先要在做压力机的机子上启动jmeter的代理,然后做为控制机的机子上添加上压力机的ip即可。 Jmeter的bin目录下有一个jmeter-server,启动它即可,windows机子作为压力机的话,运行jmeter-sever.bat,linux作为压力机的话,运行jmeter-server。 然后在作为控制机的jmeter配置文件里添加压力机ip即可,jmeter的配置文件在bin目录下jmeter.properties,添加压力机的时候,在配置文件里面找到remote_hosts添加ip,然后重启jmeter就可以看到远程压力机了。

简单的说:

前提:
两台电脑可以互相ping通
1、控制机配置文件里面添加(1099默认的端口号)
remote_hosts=127.0.0.1,192.168.1.103:1099,192.168.1.104:1099
重启jmeter
2、另外一个人的电脑上要有jmeter,并且运行jmeter-server
Windows电脑是 jmeter-server.bat
linux/mac是 jmeter-server
3、如果有参数化文件,那你也要在其他的电脑上放一份
参数化文件放在jmeter的bin目录下就可以不用写绝对路径
只写文件名就ok了

 技术图片

技术图片

 

五、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就可以查看到测试结果了

简单说:

1、在你的电脑上做好脚本,保存起来
2、jmeter -n -t c://sdfsdf/sdfsdfs/baidu.jmx -l c://xx/Desktop/result.jtl
3、打开jmeter的聚合报告或者查看结果树
选择浏览 打开上面生成的jtl文件就ok

 

jemter压力测试准备、分布式部署以及Linux运行jemter脚本

标签:图形化界面   绝对路径   响应时间   测试的   用户   简单的   目录   win   其他   

原文地址:https://www.cnblogs.com/skyxiuli/p/10596904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!