JMeter混合场景压测

最近客户项目上线前小程序需要做性能压测,使用JMeter做了下单场景和混合场景压测,Mark一下。

压测任务需求(示例):

测试类型

测试项

事务

并发用户数

需求指标

执行时间(分)

事务成功率指标要求

平均响应时间(秒)

TPS

事务成功率

压力测试

首页

首页版面版本检测

3000

3秒

10

99%




首页版面下载

3000

3秒

10

99%




登录小程序

小程序版本检测

3000

3秒

10

99%




登录小程序下载

3000

3秒

10

99%




合场景

首页(占比50%)

首页版面版本检测

首页版面下载

1000

3秒

10

99%




登录小程序(占比50%)

小程序版本检测
登录小程序下载

1000

3秒

10

99%




JMeter官方地址:https://jmeter.apache.org/

jmeter控制台启动:

cd apache-jmeter-5.6.3/bin

sh jmeter.sh

JMeter混合场景压测

图形化模式适用于调试,不要进行压测

图形化的压测方式会消耗较多的客户端性能,在压测过程中容易因为客户端问题导致内存溢出。官方不推荐我们使用图形化界面,推荐使用命令行方式执行测试脚本:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

命令行执行的方式同样适用于 Windows、Mac 和 Linux 系统,不需要纠结系统兼容性的问题。相对于命令行执行,界面化的方式更为简单、方便,但命令行执行也并不是完美无缺的。

命令行执行参数含义:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

  • -n 表示在非 GUI 模式下运行 JMeter;

  • -t 表示要运行的 JMeter 测试脚本文件,一般是 jmx 结尾的文件;

  • -l 表示记录结果的文件,默认以 jtl 结尾;

  • -e 表示测试完成后生成测试报表;

  • -o 表示指定的生成结果文件夹位置。

混合场景压测使用的是多线程组方案。白屏编辑好测试计划,然后导出 test.jmx 到压测机器,进入 jmeter 工具 apache-jmeter-5.6.3/bin 路径,黑屏执行:

nohup ./jmeter -n -t test.jmx -l result.jtl > jmeter-run.log 2>&1 & echo $! > jmeter.pid

生成html测试报告:

./jmeter -g result.jtl -e -o ./HtmlReport

相关参考:

anzhihe 安志合个人博客,版权所有 丨 如未注明,均为原创 丨 转载请注明转自:https://chegva.com/6599.html | ☆★★每天进步一点点,加油!★★☆ | 

您可能还感兴趣的文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注