0

我正在尝试运行 5 个线程组。

  1. CreateAssets(此线程组创建资产)
  2. SearchAssets(该线程组搜索之前连续创建的资产,直到全部可用)
  3. UpdateAssets(这个线程组更新之前创建的资产)
  4. SearchUpdatedAssets(此线程组不断搜索更新的资产,直到全部可用)
  5. 删除资产

我希望这个工作的方式是,

  • 并行运行 1 和 2 线程。
  • 完成 1 和 2 后,并行启动 3 和 4 线程。
  • 完成 3 和 4 后,运行线程 5。

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

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

提前致谢。

4

2 回答 2

0

您可以使用您的标志概念来处理此问题。只是您需要与所有线程组进行通信。要在线程组之间进行通信,可以使用以下方法:

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

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

或者,您可以在 JMeter 中使用“线程间通信”插件。

于 2020-06-01T12:55:34.013 回答
0

这不是您可以做的事情,在测试计划级别您只有 2 个选项:

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

在此处输入图像描述

所以使用并行控制器会更容易,这样你就只有一个线程组和 5 个采样器,如下所示:

在此处输入图像描述

于 2020-06-01T16:30:02.007 回答