【发布时间】:2023-03-17 19:18:01
【问题描述】:
在 JMeter 测试计划中,我有 4 个线程组,它们将连续执行,但是某些变量从一个线程组到另一个线程组存在依赖性,因此,如果前一个线程组中的任何采样器失败,执行的后续线程组应该停止。
测试计划:
每个线程组都是一个简单的线程组[不是setUp或tearDown线程组]
JMeter中如何控制或决定线程组的执行流程/顺序?
【问题讨论】:
标签: jmeter flow-control threadgroup
在 JMeter 测试计划中,我有 4 个线程组,它们将连续执行,但是某些变量从一个线程组到另一个线程组存在依赖性,因此,如果前一个线程组中的任何采样器失败,执行的后续线程组应该停止。
测试计划:
每个线程组都是一个简单的线程组[不是setUp或tearDown线程组]
JMeter中如何控制或决定线程组的执行流程/顺序?
【问题讨论】:
标签: jmeter flow-control threadgroup
最快最简单的方法是在Thread Group级别发生错误时停止测试
如果您想要更大的灵活性,您可以通过在If Controller 中使用${JMeterThread.last_sample_ok} pre-defined variable 来检查此HTTP Request B2 是否成功,然后您可以添加Flow Control Action 作为此If Controller 的子级并决定你想在那里做什么。
这与第 2 点非常相似,如果您的线程组 C 和 D 依赖于线程组 B 中的变量,您可以将所有采样器放在 If Controller 下
您可以使用__P() function (如${__P(threads,)})设置线程组C 和D 中的线程数,如果有值,您可以使用__setProperty() function 将此threads 属性设置为0 -具有 0 个线程的线程组没有被“启动”
【讨论】: