Jmeter如何在单个线程组或控制器中循环遍历不同属性的列表?

Wal*_*cer 0 loops jmeter

如何通过固定控制器组的不同属性进行基本循环?循环控制器运行一组设定的次数,但不使用属性.

我可以做模块,并将值设置为多线程组使用的属性,但是如何传递属性的下一次迭代,并再次运行循环?

property x
do module (points to controllers)
next property
Run Code Online (Sandbox Code Playgroud)

假设我有一个包含44个字符的列表,并且我想在进行测试时在$ {name}中遍历这些字符.我非常不想为一个角色改变构建44套控制器.

请注意我无法将额外的文件添加到我的电脑.它必须通过库存可用的控制器工作.我正在使用Jmeter 2.4 r961953

谢谢

小智 10

我将详细阐述BeanShell方法.我的假设是您希望在一个用户线程中执行此操作,如果是这样,我的建议将是:

创建一个循环控制器.

  • 逻辑控制器 - >循环控制器

Inside Loop Controller添加以下条目:

  • 配置元素 - >计数器
  • 预处理器 - > BeanShell预处理器
  • 采样器 - > yourSampler

计数器元素将被用作将用于选择从我们的阵列有效值的指数,因此,我们需要指定一个Reference Name -比方说,这将是loopCounter.

现在我们必须切换到BeanShell预处理器并定义值数组.一个很棒的事情是我们有vars变量可用,它让我们CRUD访问场景中使用的变量:

String[] varArray = {"Value1", "Value2"};
idx = Integer.parseInt(vars.get("loopCounter"))-1;
vars.put("myVariable", varArray[idx]);
Run Code Online (Sandbox Code Playgroud)

最后一步,在mySampler中,我们可以使用常规JMeter方式的变量:${myVariable}

如果您想要更复杂的解决方案,JMeter API可能非常有用.