性能测试|JMeter常用线程组设置策略

JMeter压力测试是一种重要的软件测试方法,用于模拟实际应用的软硬件环境及用户使用过程,通过长时间或超大负荷地运行测试软件,来评估被测系统的性能、可靠性、稳定性等。在JMeter压力测试中,我们时常见到的几个场景有:单场景基准测试、单场景并发测试、单场景容量测试、混合场景容量测试、混合场景并发测试以及混合场景稳定性测试。本文介绍这些场景的设置策略!

一)单场景基准测试

单场景基准测试,一般在压力测试实施前进行测试,用于检测被测功能的性能指标,以用来判断制定后期的测试计划。基准测试的策略可以是单用户执行一次或者单用户迭代执行多次。在这里我们采用后者。

线程组设计

这里的脚本设计很简单,就是1线程组循环100次,easy!

测试结果

(一般情况下我们在生成的HTML报告查看测试结果,当然也可以在GUI界面导入我们生成的jtl文件)

二)单场景并发测试

单场景并发测试是针对单个接口利用一定量的并发进行测试,获取其性能表现,并验证接口是否存在并发性问题。

线程组设计

单场景并发测试的设计比较简单,就是在线程组设置中设置若干数量的线程数。这里我们通过Custom Thread Groups插件来更好体现线程组设计。

该线程组意思为:

2000用户并发,在200S完成加载到2000用;然后持续运行900S,然后以100S来结束2000用户

测试结果:

三)单场景容量/爬坡测试

单场景容量测试,也叫做爬坡测试,通过爬坡测试。获得系统的最佳并发用户数。

线程组设计

在这里我们也使用插件来表现

线程组设计思路讲解:

首先我们这个线程组是以1000并发数开始,每次递增200用户,指导递增到2000用户。

首先第三和第四列可以根据自己需求进行设计。

其实也很简单。按照我们的设计,低234列相加的和要是2000。

我们可以根据第二列来计算出所有,首先我们要形成阶梯式递增,那就得初始化时间等于在此之前并发的运行时间。

我们看第二行的400。他等于增加到1000用户的100s+平均每个阶梯平缓的时间(1900s-20s*5)/6=400s

这个20*5就是要扣除五个200增加的过程对应时间,然后除去平台总数6

第三行就很简单了,也就是400s+300s+20s=720s。

测试结果

容量测试的结果更建议大家到HTML报告中进行查看

我们先看看Response Times Over Time,很明显在13.09左右达到了3s左右的响应时间

再看看Active Threads Over Time中该时间段的并发用户数,由此可见最佳用户数是1400

四、混合场景容量/并发测试

这个其实就没啥可说的了,和单场景的差别不大,无非就是多个场景混合在一起了,我们就不介绍了。

五、稳定性测试

稳定性测试是为获取多个接口在长时间的负载级别下,平均响应时间、资源利用率的稳定性、事务成功率的稳定性,验证系统的稳定运行能力,获取系统长时间运行的稳定性指标。在稳定性测试中,我们往往要跑好几个小时的性能脚本,所以一般建议大家一定要在下班后挂着。

线程组设计

在这里我们拿五个脚本。一共是2000用户并发。按照惯例我们最后得到每个脚本为240用户并发。于是每个线程设置如下:

测试结果:

本次内容如果大家有补充,可以在留言区留言喔!

相关推荐
赵渝强老师5 分钟前
【赵渝强老师】崖山数据库的联机重做日志文件
数据库·国产数据库·yashandb·崖山数据库
南城以南溫暖如初1478 分钟前
树洞交友系统架构设计与匿名聊天实战指南
java·spring boot·mysql·系统架构·vue·mybatis·交友
家有娇妻张兔兔15 分钟前
Redis 报错 “MISCONF Redis is configured to save RDB snapshots“?一文讲透根因与根除方案
数据库·redis·故障排查·misconf
迷迭香yy18 分钟前
回测过拟合检测体系从样本内外到组合稳健性评估 IG50免费开源股票数据API接口
服务器·开发语言·数据库·人工智能·python
数字融合20 分钟前
透明化数字孪生:未来医疗的核心平台
大数据·人工智能·virtualenv
一路向北finish31 分钟前
《Hadoop 高可用集群与 OpenStack Mitaka 控制节点部署全流程实操排坑指南》
大数据·linux·运维·服务器·hadoop·openstack
段一凡-华北理工大学32 分钟前
高炉炉况智能诊断与预警实战~系列文章14:机器学习炉况分类:样本构建、类别不平衡与模型选型
大数据·人工智能·机器学习·分类·高炉智能化·炉况诊断·炉况分类
代码里的AI星35 分钟前
B2B企业AI搜索可见度诊断与GEO技术优化实践:从0%到67%的架构重构之路
大数据·人工智能
Lost of 程序猿1 小时前
ASP.NET Core 测试实战:从单元测试到集成测试的全链路质量保障
单元测试·asp.net·集成测试
insertYam1 小时前
[hadoop高可用架构]
大数据·hadoop·架构