1

以下是我的测试计划。ForEach 控制器应遍历存储在用户定义变量“userTaskIds”中的所有任务 ID。我尝试用两者定义列表def myList = [] and List<Object> listId = new ArrayList<Object>();。在这两种情况下,它都无法循环。 在此处输入图像描述 ForEach 控制器不使用“userTaskIds”变量循环。在这里,我尝试在数字之前使用/不使用“添加”_“?”

在此处输入图像描述

以下是调试采样器结果和日志视图面板 在此处输入图像描述

日志视图

在此处输入图像描述

4

1 回答 1

2

这是因为ForEach 控制器期望这样:

  • userTaskIds_1
  • userTaskIds_2
  • ...

  • userTaskIds_matchNr = 出现次数

因此,在您的 JSR223 脚本中,您需要在每次循环迭代中执行此操作:

将 responseJSON.each 替换为

  responseJSON.eachWithIndex {
     it, iterationLoop ->

然后

vars.put("userTaskIds_"+(iterationLoop+1), ""+it.id)

其中迭代循环必须从 1 开始并递增。

和循环之后:

vars.put("userTaskIds_matchNr", Integer.toString(myList.size()));

于 2018-10-06T12:23:38.010 回答