Jmeter交替控制器 Interleave Controller

Jmeter交替控制器 Interleave Controller

一、Interleave Controller界面

Interleave Controller元素名称 Interleave Controller功能
Name 定义Interleave Controller名称
Comments 注释,描述Interleave Controller在业务中的作用
Ignore sub-controller blocks 忽略子控制器,即子控制器功能失效,由交替控制器代替。
Interleave across treads

跨线程交替

线程组在设置了多线程运行时,每一轮循环时,每个线程都在交替控制器中拿到新的请求。

二、Interleave Controller实例

@Interleave Controller 交替运行

场景一:添加一个交替控制器,在交替控制器下添加Test-A和Test-B 两个请求。

运行策略:线程组设置1个线程,循环3次。

运行结果:Test-A----->Test-B----->Test-A

@Interleave Controller 多个交替控制器

场景二:添加两个交替控制器,在“交替控制器AB”下添加Test-A和Test-B 两个请求。在“交替控制器CD”下添加Test-C和Test-D 两个请求。

运行策略:线程组设置1个线程,循环3次。

运行结果:每次都在两个交替控制器之间交替运行。

第一次循环

交替控制器AB的Test-A

交替控制器CD的Test-C

第二次循环

交替控制器AB的Test-B

交替控制器CD的Test-D

第三次循环

交替控制器AB的Test-A

交替控制器CD的Test-C

@Interleave Controller 勾选Ignore sub-controller blocks

场景三: 交替控制器勾选,忽略子控制器Ignore sub-controller blocks。在交替控制器下面添加子控制器“循环控制器”,并且循环控制器设置循环次数为3

运行策略:线程组设置1个线程,循环3次。

运行结果:Test-A----->Test-B----->Test-C (Test-C只运行了一次,说明LoopController控制器功能失效,已被交替控制器替代。如果不勾选交替控制器的Ignore sub-controller blocks,那么Test-C 会运行3次。)

LoopController设置循环次数3

勾选Ignore sub-controller blocks运行结果

@Interleave Controller 勾选Interleave across treads

场景四: 多线程运行,交替控制器勾选与不勾选跨线程交替Interleave across treads执行差异。

运行策略:线程组设置3个线程,循环1次。

运行结果:Test-A----->Test-B----->Test-C (每一个线程都在交替控制器中交替拿到一个新的请求执行)

勾选Interleave across treads

不勾选Interleave across treads

运行结果:Test-A----->Test-A----->Test-A (每一个线程第一次循环都在交替控制器中拿第一个请求。)

发布了316 篇原创文章 · 获赞 117 · 访问量 42万+

猜你喜欢

转载自blog.csdn.net/m0_38039437/article/details/104105161