Jmeter多业务混合场景如何设置各业务所占并发比例

Jmeter 性能压测 —— 混合场景 性能测试,单场景的目的一般是为了发现缺陷、发现瓶颈。完成所有单个重点场景的性能测试之后,还需要做一个混合场景的性能测试-评估系统整体性能。使用Jmeter 做混合场景设计在一个测试计划,将每个重点测试场景各创建为一个线程组,同时运行多个线程组注意:测试计划中的,独立运行每个线程组、主线程结束后运行teardown线程组均不勾选。否则不会同时运行多个线程组,会一个线程组运行完再执行下一个结合各个场景用户的使用情况, 列出各场景参与操作的用户数。 阅读详情
AI摘要

本文探讨了在JMeter中实现多业务混合场景测试的方法,包括通过线程组分配不同业务的并发比例,以及利用逻辑控制器和计数器函数实现更精细的业务比例控制。通过实例说明了如何设置线程数和使用计数器函数达成特定的业务比例。

在进行多业务混合场景测试中,需要分配每个场景占比。

具体有两种方式:

1.多线程组方式;

2.逻辑控制器控制;

第一种:

jmeter一个测试计划可以添加多个线程组,我们把不同的业务放在不同的线程组中,通过控制线程数来控制业务占比。比如实际业务中需要线程组A、线程组B和线程组C的比例为:3:2:1,那么我们可以设置线程组A的线程数为90,线程组B的线程数为60,线程组C的线程数为30,这样就可以粗略的达到要求的比例。但是如果三个事务的响应时间不一样,最终完成的业务数也会有所差异。假设当前线程数的响应时间是完全一致的,才会有3:2:1的业务占比,当然这个是理想状态。

例如测试需求如下:对业务A、业务B、业务C、业务D、业务E,5个业务按并发比例要求进行100个用户并发的压力测试;

JMeter是可以实现上述需求的,测试方案如下:

1.创建一个测试计划;

2.在该计划下添加5个线程组,分别是对业务A、业务B、业务C、业务D、业务E;

3.分别设置线程组业务A、业务B、业务C、业务D、业务E的线程数为:40、10、20、25、5(总并发量为100,按并发比例设置并发用户数)

 第二种方式:

jmeter的函数对话框中${__counter(True,)}函数获取当前迭代的次数。迭代次数也能获取到,那如何保持3:2的比例呢?这就是一个数学问题了。不卖观子,直接上代码:${__counter(true,)}%2==1||${__counter(true,)}%3==0上面_counter(true,)是获取当前迭代次数,%是取余,也就是是除2余1与3,整除时执行开新帖。以9次迭代为例:回帖9次,1,3,5,6,7,9次迭代时都会开新帖,回帖刚好是6次。9:6=3:2基本上达到了3:2的比例。

 

方案二:采用jmeter本身自带的计算器,不失为一个好的方法。但是针对一些复杂的场景,这个计算式有点难写,

  比如:3:2这个比例,我看到网上的实现都是${__counter(true,)}%2==1||${__counter(true,)}%3==0,

  这种计算方式就比较复杂了,那有没有简单一点实现方式呢?

  其实是有的。

   当参数为true时,每个用户有自己的计数器,比如10个线程组,100个loop,这是计数器的值为1-100.

   当选择false,全局计算器,10个线程组,100个loop,计数器值为1-10000

 

 比如下面场景:

 

那么表达式应该怎么写呢?

 上面有3的倍数,5的倍数,那么取其最小公倍数15,按照15分割。

均使用If控制器,表达式分别为:

a:  ${__counter(false,)}%15 <=5

b:  ${__counter(false,)}%15 >5

c:   ${__counter(false,)}%15==1

d:   ${__counter(false,)}%15>1&& ${__counter(false,)}%15<=5

总结规律:

按照最小的公倍数分割,每个控制器取他们应占的份数。

上面的3:2的实现手段,就更容易了,一个占2/5,一个占3/5

jmeter控制多接口压测执行比例 比如业务场景里,初始化接口的流量占比较多,然后是A,再是B,若采用混压的方式进行压测的话,在jmeter里如何控制接口的比例呢?计算方法:adcb 都为接口:流量qps,a:10 b:10 c:30 d:40 总和:90。若还有D接口,想要每次执行时D接口都会被请求,可以勾选 Per User,吞吐量不填就可。计算方法: adcb 都为接口:流量qps,a:10 b:10 c:30 d:40。设置线程数为10,执行结果: ABC接口执行的数量分别是 2 3 5。 阅读详情

相关推荐

Jmeter多业务混合场景设置并发比例(非GUI模式)

性能测试设计混合场景,一般有几种方式,分别是: 1.每个场景设置一个线程组 2.使用if控制器 3.使用吞吐量控制器 以上每种方法的运行原理都不同,大致上来说; 第一种因为响应时间的差异。因为平均响应时间相差较大,可能会但最后并发的次数与预期差异 第二种采用随机数,相比之下并发比例与预期还会存在一定差异(可以接受) 第三种吞吐量控制器,比例控制得非常准确,但是会先把A接口运行完成后,再...

别动我名字 2484

JMeter之压力测试——混合场景并发

JMeter混合场景并发压力测试

weixin_45189665的博客 9627

JMeter场景实现

最近有人问到JMeter的场景问题: 1.单个角色(比如业务员角色)的业务组成一个混合场景,业务比例如何控制? 2.多个不相干业务组成一个混合执行场景,需要他们独立执行,互不影响,在JMeter中如何实现?. 下面说点我的意见: 1.单角色的场景可以参见我的另一篇博文http://blog.youkuaiyun.com/selingchen/article/details/47844375,应

不仅仅是性能测试 6209

Jmeter场景组合测试——多个线程组的设计方案

我们绝大多数同学在使用jmeter进行性能测试时都会在一个线程组中完成测试工作,今天我来重点讲解一下jmeter多个线程组在测试中的应用,这也是关于jmeter性能测试面试过程中的进阶问题,希望能够帮到大家来解决工作中不同的测试需求。

liwenxiang629的博客 8461

JMeter多接口按比例并发压测的三种实战方案

在性能测试中,'按比例并发'是指按照业务真实流量权重(如60%登录、25%订单、15%支付)对多个HTTP接口进行协同施压的技术能力。其核心原理在于突破线程数静态配置的局限,通过动态调控并发资源与请求节奏,实现RPS级的流量塑形。该技术直接决定容量评估的准确性与故障复现的真实性,广泛应用于电商大促、金融交易、SaaS服务等混合业务场景。本文聚焦JMeter生态,详解Concurrency Thread Group与Throughput Shaping Timer组合、JSR223+Groovy闭环控制、Ba

weixin_33716154的博客 674

【jmeter系列】Jmeter多业务混合场景-设置各业务所占并发比例的3种方式12

例如测试需求如下:对业务A、业务B、业务C、业务D、业务E,5个业务按并发比例要求进行100个用户并发的压力测试;2.在该计划下添加1个线程组,5个吞吐量控制器,分别是对业务A、业务B、业务C、业务D、业务E;3、业务A、业务B、业务C、业务D、业务E设置的比例为40、10、30、15、5。3、业务A、业务B、业务C、业务D、业务E设置的比例为40、10、30、15、5。3、业务A、业务B、业务C、业务D、业务E的线程数为40、10、30、15、5。1.创建一个测试计划;1.创建一个测试计划;

橘子偏爱橙子随笔 664

jmeter 不同场景 比例_Jmeter多业务混合场景如何设置各业务所占并发比例

在进行多业务混合场景测试中,需要分配每个场景占比。具体有两种方式:1.多线程组方式;2.逻辑控制器控制;第一种:jmeter一个测试计划可以添加多个线程组,我们把不同的业务放在不同的线程组中,通过控制线程数来控制业务占比。比如实际业务中需要线程组A、线程组B和线程组C的比例为:3:2:1,那么我们可以设置线程组A的线程数为90,线程组B的线程数为60,线程组C的线程数为30,这样就可以粗略的达到要...

weixin_39867208的博客 4005

在JMeter性能测试中,并发的预期结果分析说明

在性能测试中,并发的预期结果需要根据具体业务场景和技术指标来定义。以下是不同并发测试场景下的预期结果及分析方法

南开大学 | 10 年 + 软件研发与测试实战 | 现任企业质控负责人 | 专注端到端交付质量 302

jemeter多场景混合案例_Jmeter多业务混合场景如何设置各业务所占并发比例

在进行多业务混合场景测试中,需要分配每个场景占比。具体有两种方式:1.多线程组方式;2.逻辑控制器控制;第一种:jmeter一个测试计划可以添加多个线程组,我们把不同的业务放在不同的线程组中,通过控制线程数来控制业务占比。比如实际业务中需要线程组A、线程组B和线程组C的比例为:3:2:1,那么我们可以设置线程组A的线程数为90,线程组B的线程数为60,线程组C的线程数为30,这样就可以粗略的达到要...

weixin_32147807的博客 483

PCIe ATS介绍

主机侧使用IOMMU完成设备地址到物理memory地址的转换,以及设备访问权限的检查。但如果所有PCIe设备都在进行DMA操作,则TA(Translation Agent)和ATPT(Address Translation and Protection Table)则会成为瓶颈,从而影响系统的latency。

maxwell2ic的博客 6021

R3LIVE 1.0 适配 Velodyne 16线雷达:3步配置解决150米漂移问题

本文详细解析了R3LIVE 1.0适配Velodyne 16线雷达时出现的150米漂移问题,并提供三步配置方案。通过调整雷达类型设置、运动补偿与时间对齐、视觉-激光联合优化等关键参数,有效解决了系统漂移问题,提升定位精度。适用于机器人定位与建图领域的开发者。

weixin_29054195的博客 268

jmeter混合场景测试,设置多业务并发比例(吞吐量控制器)

解决:刚开始的脚本是从其他版本上跑了复制过来的,可能是因为jmeter版本不一致,导致各组件未正确工作,关闭jmeter重新运行,重新新建了测试计划,再跑响应时间正确了。为了验证需求提出的性能要求,结合实际可能的高压力场景,较全面的检测系统的性能表现。然后运行jmeter脚本,查看tps和响应时间。设置业务A、业务B、业务C并发比例分别为70%、20%、10%,根据需求调研的业务模型和交易占比,设置不同并发用户数。并设置并发比例,然后在每个吞吐量控制器下添加。运行jmeter脚本后,TPS和响应时间截图。

weixin_44707404的博客 1974

AutoSAR RTE调度机制揭秘:从定时器事件到Runnable执行的完整流程

本文深入解析了AutoSAR RTE(运行时环境)的核心调度机制,详细阐述了从定时器事件触发到Runnable(可运行实体)执行的完整流程。通过剖析Rte_Start()函数、OS任务与警报的交互,以及事件驱动循环,揭示了RTE如何作为幕后指挥家,高效、可靠地协调软件组件间的周期性任务执行,是打通AutoSAR应用开发的关键。

weixin_29169899的博客 226

【性能测试】混合业务场景按比例设计

在业务A消耗掉每个接口10%后,只剩下接口1、2、3,业务B按照接口1、2执行,则业务B每个接口将消耗掉10%,剩下的接口1、3都只剩下20,满足业务C执行顺序;新增接口5、6,接口比例如下,业务A按接口顺序1、2、3、4执行,业务B按照接口顺序1、2执行,业务C按照接口顺序1、3执行,业务D仅执行接口5,业务E仅执行接口6,设计出容量场景。业务A按接口顺序1、2、3、4执行,业务B按照接口顺序1、2执行,业务C按照接口顺序1、3执行,各接口比例不变,设计出容量场景。

nhb687096的博客 325

win10下Miracast无线投屏使用教程及异常解决方案(超详细)

文章目录一、什么是Miracast?二、主流的无线投屏技术有哪些特点?三、如何查看自己的win10电脑是否支持Miracast无线投屏功能?四、win10电脑如何使用Miracast无线投屏功能? 一、什么是Miracast? Miracast是由Wi-Fi联盟于2012年所制定,以Wi-Fi直连(Wi-Fi Direct)为基础的无线显示标准。支持此标准的3C设备(如智能手机、电视、投影、电脑等...

帅气的小白的博客 44万+

Allegro老鸟的20年效率秘籍:用YepEda Skill脚本实现PCB设计全流程自动化

本文分享了Allegro资深工程师20年效率秘籍,通过YepEda Skill脚本实现PCB设计全流程自动化。从封装建库到规则配置,再到DFM审核,YepEda Skill大幅提升设计效率,每天节省至少4小时重复劳动。文章详细解析了自动化工具链的核心功能,并提供了实战技巧和量化对比数据。

weixin_42546392的博客 238

jmeter-实现多个业务混合并发压力测试

      测试服务器过程中,可能遇见这种测试需求:同一时间多个不同事务向服务器发出请求。例如对一个服务器来说,同一时刻可能有用户正在登陆,有用户正在浏览网页,有用户正在写数据,有用户正在退出等等,那么该如何实现以上场景的压力测试呢?       假设测试需求如下:对业务login、业务read、业务write、业务logout,4个业务按设置好的并发比例(如1:1:1:1,可根据测试需求修改)要...

飞扬的博客 1万+

MTK Android 12 Clone Project 克隆项目

本文介绍了如何使用MTK Android 12 Clone Project 克隆一个新的项目。通过使用绝对路径执行Perl脚本,并根据需要选择升级或降级位数,可以成功地生成一个新的项目并进行编译。希望本文对xdm有所帮助。

我其实什么都不会 942

性能测试:混合业务场景按比例设计

业务A执行接口1、2、3、4,且接口4只有业务A执行,则业务A将消耗每个接口10%;在业务A消耗掉每个接口10%后,只剩下接口1、2、3,业务B按照接口1、2执行,则业务B每个接口将消耗掉10%,剩下的接口1、3都只剩下20,满足业务C执行顺序;计算业务比例时,按照所有业务中都出现的接口计算。这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!,免费获取软件测试全套资料,资料在手,涨薪更快。

HUACE5400的博客 220

经典的YOLOv3和YOLOV5算法详解及代码复现

yolov3和yolov5算法详解及代码复现

hasakie的博客 770

华为OD机试真题2026双机位C卷 Python&JS 语言 实现【主次关联成环警告】

在ICT运维领域,现网运维工程师面向对设备上报的众多告警,往往需要筛选出最主要的告警优先处理,次等级的告警或许为同一个根因导致的告警,处理优先级会放后或者不处理,这样就诞生出主次关联告警的概念。给定一系列告警的主次关联关系,判断是否存在如下情况:

MISAYAONE的博客 269

Jmeter测试中如何控制业务比例

在进行多业务混合场景测试中,需要分配每个场景占比。 具体有两种方式: 1.多线程组方式; 2.逻辑控制器控制; 第一种: jmeter一个测试计划可以添加多个线程组,我们把不同的业务放在不同的线程组中,通过控制线程数来控制业务占比。线程组A触发线程数90, 线程组B触发线程数60; 这样就可以粗略的控制业务占比近似3:2。但是如果两个事务响应时间不一样,最终完成...

weixin_34148340的博客 779

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

下一篇: Jmeter:配置不同业务请求比例--Random方法
wangkaibing
博客等级 码龄20年 5粉丝 11原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值