一、阶梯式压测背景
什么是阶梯式压测?
阶梯式压测,就是对系统的压力呈现阶梯性增加的过程,每个阶段压力值都要增加一个数量值,最终达到一个预期值。然后保持该压力值,持续运行一段时间。实际上,阶梯式压测,是负载测试的一种通用方法。
为什么要阶梯式压测?
原因与负载测试是相同的。其目标是测试在一定负载情况下的系统性能,测试系统的不同负载情况下的性能指标。这种方法可以帮助我们,在最初无法预知服务器性能的情况下,迅速的得到一个极限值。在执行中,如果某个阶梯时间内Error率突然增加,那么这个阶段就是服务器的某个极限值。这种方法,要比我们不断地循环“设定并发值->执行->查看结果->调整并发值”这样一个迭代过程要方便的多。
二、阶梯式压测方法
1.JMeter插件安装
jmeter-plugins-manager-1.6.jar,下载地址:https://jmeter-plugins.org/install/Install/
下载后将插件放到%JMETER_HOME%\lib\ext 文件夹下
重启JMeter:
2.使用步骤
①新建线程
添加监视器来查看结果:
jp@gc - Transactions per Second —— TPS
jp@gc - Response Times Over Time —— 响应时间
jp@gc - Active Threads Over Time —— 活跃线程数
View Results Tree —— 查看结果树
Aggregate Report —— 聚合报告
参数说明:
This group will start:给定的当前负载的并发用户数
First wait for:等待XX秒后开始启动
Then start:0秒(初始化)启动XX并发用户数
Next, add:每using ramp-up时间内启动XX的用户数
threads every:每次加压阶梯下用户完成启动后保持运行XX秒
using ramp-up:XX秒内完成Next, add的用户数的启动
Then hold load for:This group will start并发用户数全部启动完成后保持运行XX秒
Finally, stop:每隔threads every的时间减少XX用户数
threads every:每隔XX秒减少Finally, stop的用户数
添加HTTP请求编写测试脚本即可