在JMeter预处理程序中添加一个变量,并在If控制器上使用。

问题描述 投票:0回答:1

我试图运行5个线程组。

  1. CreateAssets (该线程组创建资产)
  2. 搜索资产 (该线程组搜索之前连续创建的资产,直到所有资产都可用)
  3. UpdateAssets (该线程组更新之前创建的资产)
  4. SearchUpdatedAssets (该线程组持续搜索更新的资产,直到所有资产都可用)
  5. 删除资产

我想让这个工作怎么做是。

  • 运行1和2线程Parrallaly。
  • 一旦1和2完成,开始3和4线程Parralally。
  • 一旦3和4完成,运行线程5。

到目前为止,我想的是增加 if controller 成线程3和4,在上面的线程上设置一个标志,并将该标志设置为 flag true 一旦线程1和线程2完成,并将该条件添加到 if controller.

真的很感激,如果有人能帮助我。

先谢谢你。

testing jmeter qa threadgroup
1个回答
0
投票

你可以使用你的flag概念来处理这个问题,你只需要和所有线程组进行通信,要在线程组之间进行通信,你可以使用以下方法。

props.put("var", "value"); / 在第一线程组中设置属性。

props.get("var"); / 获取第二线程组的属性。

或者你可以使用JMeter中的 "线程间通信 "插件。


0
投票

这不是你能做到的,在 测试计划级别 你只有两个选择。

  1. 顺序运行所有线程组
  2. 并行运行所有线程组

enter image description here

因此,如果选择了即墨,会更容易。并行控制器 所以你只有一个线程组和5个采样器的组织形式。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.