Jmeter之逻辑控制器(事务控制器+仅一次控制器+吞吐量控制器)-第八天

一.逻辑控制器

1.1事务控制器

事务,其实可以理解为完成一个业务所调用所有接口的集合,当然可以是单个接口,也可以是多个相互关联的串联接口。

所以在进行性能测试时,在用于多接口串联的场景时,需要汇总统计该多个接口串联执行完成时所有的响应时间,也就是一个事务或者场景的响应时间。

事务控制器(Transaction Controller),可以将多接口串联的场景自动的分类显示,更易于分类识别整个场景的响应时间。

1.1.1添加事务控制器

鼠标右键)线程组--->(鼠标右键)添加--->(鼠标悬停)逻辑控制器--->(左键点击)事务控制器。 如下图所示:

1.1.2 参数详解

        我们在控制器里面会看到两个勾选框,我们来一起看下这个框有什么作用,后续会介绍他的使用场景,如下图所示:

 

   Generate parent sample :

        不勾选:当不勾选的时候,这里就是会和平常执行http请求没啥两样,在我们通过聚合报告查看结果的时候,有多少个http请求上面就有多少个结果,互不干预;

        勾选:将逻辑处理器下面的http请求当成一个整体来统计,我们在聚合报告或其他的一些监控功能的时候,看到的就只有一条数据,哪怕你在处理器下添加了100条http请求,在统计的时候也是算一条;

        lnclude duration of timer and pre-post processors in generates sample:

        不勾选:啥事没有

        勾选:问题就来了,当勾选后,我们执行的时候,可能会加一些计时器啊等一些占用时间的插件,但是,这个时间是属于接口的执行时间吗,当然不是,但是,当你勾选后,jmeter就会把这个时间统计成接口执行的时间了,所以,这里如果没有特殊需求的话,还是别选好。

 1.1.3实战演练

事务中会包含一个或多个请求,当含有多个请求时,想看一个事务的测试结果(所有请求的总时间和总的吞吐量等),可以通过事务控制器进行操作。

下面通过事务控制器将两个请求合为一个事务进行统计:

再线程组中添加事务控制器,而后把【点击发帖】和【发帖】拖进去

 (1)添加事务控制器

(2)拖动事务控制器(根据自己的需要)

(3)将“点击发帖”和“发帖”接口拖到事务控制器下面

 (4)不勾选generate parent sample 聚合报告执行结果

(5)勾选generate parent sample 聚合报告执行结果

 

(6)注意

1.2仅一次控制器

在每个线程内,该控制器下的内容只会执行一遍,无论循环多少次,都只会执行一遍

1.2.1实战

比如:用户登录,只会登录一次,就可以将登录的请求放置在此控制器中

设置线程组的线程数和循环次数(都设为10)

 查看运行结果

每个用户只需要登录一次(让业务逻辑更接近于真实)

1.3吞吐量控制器

 1.3.1参数详解

  • Total Executions:按照次数来执行;当小于或者等于0时,则不执行,且勾选Per User对该模式有影响(使用 total execution 模式,不勾选 per user 选项,执行次数=吞吐量值;勾选了 per user,执行次数=user数量(对应线程数) * 吞吐量值)

  • Percent Executions:按照百分比来执行;Per User勾选或不勾选都不会影响该模式(如线程循环次数设置为 5,添加 Percent executions 为 40的吞吐量控制器,其下子节点则循环 2 次)

1.3.2实战

比如:有时发贴只有一条,但是对应的回帖可能会有几十条,此时我们就可以通过吞吐量控制器来控制流量

 

 运行结果

  • 15
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
吞吐量控制器(Throughput Controller)是JMeter中的一个元件,用于控制测试计划中各个元件的执行次数,以达到模拟真实负载的目的。通过设置吞吐量控制器的参数,可以灵活地控制元件的执行次数。 根据引用\[1\]中的参数说明,吞吐量控制器有以下几个参数: - Total Executions:总执行次数,即元件在整个测试计划中的总执行次数。 - Percent Executions:百分比执行次数,即元件在整个测试计划中的执行次数占总执行次数的百分比。 - Per User:每个用户的执行次数,即每个用户在整个测试计划中的执行次数。 根据引用\[2\]和引用\[3\]的描述,吞吐量控制器的执行次数计算方式如下: - 如果吞吐量计算出来的执行次数(num)没有超过线程数,则每个吞吐量控制器下元件的执行次数为num。 - 如果吞吐量计算出来的执行次数(num)超过线程数,则每个吞吐量控制器下元件的执行次数为线程数。 总结起来,吞吐量控制器可以根据设置的参数控制元件的执行次数,以实现对测试计划的负载控制。 #### 引用[.reference_title] - *1* [【P43】JMeter 吞吐量控制器(Throughput Controller)](https://blog.csdn.net/qq_45138120/article/details/130935912)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [【Jmeter5.1】逻辑控制器元件四:Throughput Controller](https://blog.csdn.net/ak739105231/article/details/103309702)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

布凡哦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值