jmter性能阶梯式压测(详细教程)

一、简介

模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一段时间

【优势】

1. 逐步增加负载,减少系统压力突然增大导致系统崩溃的风险。

2. 可根据测试结果及时调整压测计划,有效的发现和解决系统性能问题;

二、 测试准备

3.1 下载阶梯测试第三方插件

        1. 下载阶梯测试的第三方插件包(下载地址:Install :: JMeter-Plugins.org

        

        2. 将下载下来的jar包放置在jemter文件的lib\ext下

        3. 重启Jmeter,检查插件是否安装成功,打开jmeter,点击选项下的插件管理

3.2  安装阶梯测试第三方插件

  1. 打开jmeter----选项----插件管理

2.  在Available Plugins选项中输入jpgc后空格,就可以搜索出jpgc插件,然后勾选jpgc - Standard Set后,点击Apply Changes and Restart JMeter后等待插件安装完成

在Available Plugins中找到Custom Thread Groups,点击Apply Changes and Restart JMeter后等待插件安装完成

3.3  提前熟悉性能测试方案

提前熟悉性能测试方案,充分了解系统架构和系统特点,制定有效的阶梯压测计划

三、编写调试jmeter脚本

1. 创建负载控制器线程组(sepping thread group)

2. 添加HTTP-信息请求头、HTTP-请求默认值、http请求

3. 添加监听器(根据自己实际需要添加不同的监听器)

注: 可根据实际业务场景,使用逻辑控制器、前后处理器、配置元件等;

四、设置阶梯压测参数

1. 在开始压测之前,确定每个阶段的并发用户数量。这个数量可以根据业务方提供,或者根据实际日活用户数量,或者预期用户增长率等来估算。

2. 设置不同阶段的持续时间。起初阶段的持续时间可以设置为5分钟,后续阶段可以有规律的递增10,15,20...

( 设置set步长,可通过设置值观察曲线图变化,如下图)

解释下参数设置:

① 总线程数

② 等待10秒,这个时候还没有用户进入

③ 从第x个用户开始

④ 和 ⑤ 这里一起理解,添加50个用户,持续运行5分钟(间隔)

⑥ ramp-up,设置0,例如40个用户直接添加到50个用户,没有使用曲线添加。

                     设置10,10s启动,例如40个用户直接添加到50个用户,使用曲线添加;

⑦ 达到最大并发数时,持续压测时间

⑧ 和 ⑨,退用户,每10秒退出100个用户。

五、压测机上执行

1. 执行jmeter脚本(排除由于环境引起、脚本原因引起、jmeter软件引起的问题,导致接口的失败)

       如果jmeter发现阶梯没有执行完就停止执行,且jmeter中有报错,修改jmeter配置,如图


2. 在压测过程中,监控性能指标。包括响应时间、错误率、吞吐量, 以及服务资源的监测包括CPU、内存、磁盘读写、磁盘IO、网络带宽、系统线程等;

3.  接口的压力测试,不能执行一次定结果。收集多次压测结果,方便后续分析和优化。

六、测试结果分析

1. 通过jp@gc - Transactions per Second报告可以看失败的,当失败的比较多时,也有可能到了性能测试瓶颈了;也可以通过该报告分析TPS趋势;

2. 通过jp@gc - Transactions per Second报告和jp@gc - Active Threads Over Time报告分析,可以找到性能测试瓶颈时支持的最大并发量。

3. 通过jp@gc - Response Times Over Time报告,分析每个阶段的响应时间。 

4. 通过汇总报告、聚合报告,分析响应时间、吞吐量是否符合预期;

5. 通过Grafana+Prometheus分析,CPU、内存、磁盘读写、磁盘IO、网络带宽、系统线程等是否满足预期结果;

七、输出性能测试报告

1. 根据分析的测试结果,汇总并输出测试报告

  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值