性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,或者使用快增长或者慢增长模式增加并发,然后持续运行一段时间。一般持续运行的时间是10-20分钟。
在jmeter中,有这样一个插件,可以帮我们实现这个功能,这个插件就是:Stepping Thread Group。这个插件类似于LoadRunner中的 Controller。
1、下载配置方法
Stepping Thread Group是jmeter插件的一种,其作用就是模拟实际的生产情况,不断对服务器施加压力,直至到某个值,然后持续运行一段时间。
下载地址:https://jmeter-plugins.org/downloads/old/
下载界面如下:
下载后需要解压,然后将JMeterPlugins-Standard.jar包放在jmeter安装目录的jmeter-3.0\lib\ext路径下,重新启动jemter即可。
2、使用介绍
启动jmeter,添加线程组——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个线程;
将调好的jmeter脚本jpgc线程组下面,配置好线程组数据,运行脚本即可。
3、生成HTML测试报告
通过如下命令,一次性完成测试执行和生成HTML可视化报告的操作
例子:
jmeter -n -t E:\script\xingneng\shop_demo.jmx -l E:\script\xingneng\test.jtl -e -o E:\script\xingneng\report
执行完成后会在指定目录生成测试报告:
用浏览器打开生成的文件目录下的index文件,效果展示如下:
测试报告生成后,压测就完成了,接下来就是对压测出来的数据进行分析处理,得出压测的结果。