遍历数组 - Jmeter

Loop through the array - Jmeter

我尝试循环场景 2 次从数组中获取数据。

我的用例是:我想为多个国家/地区创建用户,所以我不想处理这种情况,而是想实现循环逻辑。

到目前为止试过了,但没有成功:

  1. 我想从这里获取数据

//JSR223预处理器

String[] varArray = {"US", "UK"};
idx = Integer.parseInt(vars.get("loopCounter"))-1;
vars.put("myVariable", varArray[idx]);

  1. 反逻辑:

  2. 整个脚本,这是多个 API 调用的链,我想使用获取数据,只有一个调用。

结果: 我得到 null,如果我尝试使用获取变量。

Script37.groovy: 1: unexpected token: US @ line 1, column 22.
   String[] varArray = {"US", "UK"};

使用Apache Groovy时,java数组需要使用方括号:

String[] varArray = ["US", "UK"];

如果您使用的是 Beanshell/Java 脚本语言,您的代码将有效

String[] varArray = {"US", "UK"};
  1. 通过 User Defined Variables 定义 countries 变量,例如:

  2. Loop Controller you can dynamically get the array length via __groovy()函数中为:

    ${__groovy(vars.get('countries').split().size(),)}
    

  3. 无论你想在 Loop Controller 中的什么地方,你都可以将给定循环的 "current" 国家/地区引用为:

    ${__groovy(vars.get('countries').split()[vars.get('__jm__Loop Controller__idx') as int],)}