目录
适用场景:
在实际的测试场景中,有时需要模拟阶梯型施压的场景,即:从某个点开始不断增加压力,直到达到某一值,然后持续运行一段时间,再继续加压,循环往复直到达到预期峰值,运行一段时间,然后再分批次退出。需要安装的插件:Stepping Thread Group
一、插件下载及安装
1.安装插件管理器
1)输入下载地址:
2)下载的包放至JMeter文件夹的\lib\ext目录下
3)重新启动打开jmeter,点击选项-Plugins Manager,选择Available Plugins标签,输入jpjc(后面加一个空格)搜索,勾选jpgc-Standard Set后,点击Apply Changes and Restart JMeter,即可完成插件安装,安装成功后,右击【测试计划】-->【添加】-->【线程】-->【jp@gc - Stepping Thread Group】,有此选项代表已安装成功。
4)如果上述下载失败,可以访问下面的地址手动下载,下载地址:
5)下载后解压,将JMeterPlugins-Standard.jar放至JMeter文件夹的\lib\ext目录下,重新启动JMeter即可。
二、实例场景
A.阶梯式,适用“缓起步,快结束”的场景
1.添加 Stepping Thread Group
右击【测试计划】-->【添加】-->【线程】-->【jp@gc - Stepping Thread Group】
2.配置参数(按照实际场景进行参数配置,后面根据运行结果可以再进行参数的修改)
参数说明:
- 1>This grop will start :线程最大用户数100
- 2>First,wait for:等待5秒,再进入用户
- 3>Then start:然后增加20个用户
- 4&5>Next add …… thread every :然后每隔10秒钟增加20个用户
- 6>using ramp-up:设置加速添加秒数,设置为0表示不设置加速时间,直接添加用户
- 7>Then hold load for:持续时间60秒
- 8&9>Finally,stop……threads every :每隔10秒退出20个用户
3.添加取样器
右击【线程组】-->【添加】-->【取样器】-->【http请求】
4.访问CSDN首页为例
5.添加监听器(Active Threads Over Time、Response Times Over Time、Transactions per Second)
插件含义(此处只统计了常用的一些插件):
- jp@gc - Active Thread Over Time:不同时间活动用户数量展示
- jp@gc - Transactions per Second(简称TPS):每秒事务数【常用】
- jp@gc - Response Times Over Time(简称TRT):事务响应时间【常用】
- jp@gc - PerfMon Metrics Collector:服务器性能监控数据采集器,需要配合ServerAgent监控插件使用
- jp@gc - Ultimate thread group:阶梯压测线程组设置(多用于负载测试)
- jp@gc - Throughput shaping timer :用来模拟指定的系统吞吐量
- jp@gc - Intel - Thread Communication PerProcessor:前置处理跨线程组传递数据
- jp@gc - Intel - Thread Communication PostProcessor:后置处理跨线程组传递数据
6.运行脚本,等待结果
每秒活跃线程数:
随时间的变化,响应时间的变化:
每秒处理的事务数:
B.波浪式,适用不同时间段压力值值不同,加压方式不同的场景
1.添加 Ultimate Thread Group
右击【测试计划】-->【添加】-->【线程】-->【jp@gc - Stepping Thread Group】
2.配置参数
参数说明:
- 1>Start Thread Count:当前所选时间段的并发用户数量
- 2>Initial Delay,sec:初始化时间,单位秒
- 3>Startup Time,sec:启动时间,单位秒
- 4>Hold Load For,sec:所有用户启动完成后保持运行的时长,单位秒
- 5>Shutdown Time:结束时间,单位秒
3.添加取样器
右击【线程组】-->【添加】-->【取样器】-->【http请求】
4.访问百度首页为例
5.添加监听器(Active Threads Over Time、Response Times Over Time、Transactions per Second)
6.运行脚本,查看结果
每秒活跃线程数:
随时间的变化,响应时间的变化:
每秒处理的事务数:
三、导出报告(命令行方式)
进入bin目录下,执行cmd命令。然后执行:
jmeter -n -t ../jmx/Jmeter压测.jmx -l ../report/result.jtl -e -o ../report/webreport
注意:
1、在JMeter目录下创建report目录。