• 3
  • 4
分享
  • jmeter负载测试中如何找到最大并发用户数(实战)——软件测试圈
  • 饭团🍙 2022-06-13 11:13:17 字数 1074 阅读 2755 收藏 4

前言

在性能测试中,当我们接到项目任务时,很多时候我们是不知道待测接口能支持多少并发用户数的。此时,需要我们先做负载测试,通过逐步加压,来找到最大并发用户数。那么当我们找到一个区间,怎么找到具体的值呢?

在区间中逐步增加步长,出现以下任意现象时,即是最大并发用户数:

  1. 出现连续报错

  2. 平均响应时间超过1.5秒(1.5秒是行业标准)

  3. tps出现下降趋势

负载测试概念

逐步增加并发用户数,找出被测系统的最大可接受的并发用户数,并考察系统性能的变化。

脚本总体设计:

1.png

场景介绍:

1、首先用插件管理器下载插件jpgc-StandardSet,然后重启jmeter

2、添加线程组jp@gc-SteppingThreadGroup

3、在线程组下添加请求取样器和其他配置元件,并填写接口参数,本文的被测接口为注册接口

4、添加监听器:

jp@gc-ActiveThreadsOverTime(活跃线程数随时间变化图)
jp@gc-ResponseTimesOverTime(响应时间随时间变化图)
jp@gc-TransactionsperSecond(tps随时间变化图)

5、jp@gc-SteppingThreadGroup填写数据,场景为在5秒内增加10个并发用户数,并运行30秒,再继续在5秒内增加10个并发用户数,重复循环,直至并发用户数达到50个后运行脚本60秒。然后在每1秒内减少5个并发用户数,直到减为0,结束脚本的运行。

2.png

6、第一次运行脚本,结束后观察数据:

3.png

4.png

5.png

由图形得知:

  1. 当并发用户数为20时,平均响应时间超过1.5秒

  2. tps全程没有出现明显的下降趋势,也没有出现连续的报错

第一次运行脚本分析:因此得出结论,系统的最大并发用户数为10~20区间

我们已经得出系统的最大并发用户数为10~20区间,那么具体是多少呢?接下来要减少步长,并进行第二次的测试

7、jp@gc-SteppingThreadGroup填写数据,场景为以10个并发用户数为基准,在1秒内增加1个并发用户数,并运行30秒,再继续在1秒内增加1个并发用户数,重复循环,直至并发用户数达到20个后运行脚本60秒。然后在每1秒内减少5个并发用户数,直到减为0,结束脚本的运行。

6.png

8、第二次运行脚本,结束后观察数据:

7.png

8.png

9.png

由图形得知:

  1. 当并发用户数为17时,平均响应时间超过1.5秒

  2. tps全程没有出现明显的下降趋势,也没有出现连续的报错

第二次运行脚本分析:因此得出结论,系统的最大并发用户数为16


作者:测试小航

原文链接:https://blog.csdn.net/hanserk/article/details/123048816

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   据报道,当地时间周二,沃尔玛向员工发出明确指令,要求不得将任何与沃尔玛相关的信息分享至ChatGPT等生成式人工智能系统内。  在发给员工的内部邮件中,沃尔玛负责技术和软件工程的部门沃尔玛全球科技表示,“在注意到给公司造成风险的活动之后”,该部门此前屏蔽了ChatGPT一段时间。“随后,我们花时间评估和制定了一套关于生成式人工智能系统的使用指南,目前已经在沃尔玛内部网络中开放了ChatGPT的使用。”  关于该公司何时屏蔽了ChatGPT,以及所谓的有风险活动是什么性质,沃尔玛发言人没有做出回应,仅仅在声明中称:“大多数新技术既能带来新的帮助,也会制造新的风险。对我们来说,评估这些新技术并...
            0 0 853
            分享
          •   应用场景  测试场景中,我们会先做一些SMOKE测试,以便先了解一下基本的测试是否通过,如在API测试中,先验证返回的Json文件一样,在没有具体到细节时,我们会先了解返回的Json文件是否符合正确的Json格式,以及某次字段数据类型、格式是不是和预先定义的相匹配。  今天就介绍一下Rest-Assured支持的Json schema-validator一次验证整个回应的Json文件。  测试框架: Java + Rest-Assured  语言: Java  IDE: Intellij IDEA  项目类型: Maven  公共API 地址:  https://api.data.gov....
            12 12 1981
            分享
          •   1 引言  伴随着时代的不断发展,汽车由最开始的奢侈品逐渐发展成为现在家家户户普遍使用的交通工具,已经成为了人们日常生活中不可缺少的代步工具,并且在各行各业的发展过程中也得到了有效的应用,在一定程度上为行业的发展提供了帮助。虽然汽车的出现为人们的生活与行业的发展带来了极大便利,但是随着汽车数量的不断增长,汽车排放的尾气对环境造成的污染不容小觑,甚至严重的污染了空气,对人们的身体健康产生了影响,因此,要采取一定的措施减少汽车尾气对环境的污染。伴随着科技水平的不断进步,新能源汽车出现在人们的视野中,新能源汽车有着先进的底盘技术,能够有效减少尾气的排放,大大降低汽车对环境的污染,不仅能够为人们的...
            0 0 847
            分享
          •   C端重体验B端重逻辑基本已经成为大部分产品世界的共识了,因此需求梳理成为了B端产品经理重要的工作场景。而如何进程需求梳理,首选应该先确定你是设计的一款标准化商业垂直型产品,还是基于内外部客户明确需求的定制化产品。  标准商业化产品  面向市场对多个行业B端客户销售的产品被称为标准化产品,这类产品主要采用单套产品私部署模式或SAAS云服务模式进行销售,后者是目前市场主流。因为是面向全市场标准化销售产品,在梳理需求前需要先确定产品是面向大部分公司内部标准化业务的业务垂直产品还是面向不同行业用户的行业垂直产品,前者强调解决大部分企业内部一类标准业务,如OA、CRM、HRM等,这种产品需要梳理企业...
            0 0 656
            分享
          •   一般软件测试的面试分为三轮:笔试,HR面试,技术面试。  前两轮,根据不同企业,或有或无,但最后一个技术面试是企业了解你“行不行”的关键环节,每个企业都会有的。  在平时的学习、工作中一定要善于总结,如果回答不好,面试官会认为你技术能力有限或者不勤于思考,是很容易被pass掉的。  小编简单总结了些面试过程中经常会被问到的问题:  hr会问的几个问题  1.你觉得自己的优缺点是什么?  2.你上一家公司的薪资是多少,调了几次薪?  3.为什么从上一家公司离职呢?  4.离职证明和背调可以吗?  5.你还有什么问题要问吗?  (这些问题都带坑!回答不好会死在这儿的,不知道怎么回答,可以百度下...
            0 0 475
            分享
      • 51testing软件测试圈微信