代码之家  ›  专栏  ›  技术社区  ›  rellocs wood

如何从jmeter中foreach控制器中的vars获取对象

  •  0
  • rellocs wood  · 技术社区  · 7 年前

    假设我在最后一个请求的后beanshell处理器上设置了一个列表。

     List list = Arrays.asList("a","b");
     vars.putObject("list", list);
    

    如何将每个列表值应用于foreach控制器中的请求?谢谢!

    1 回复  |  直到 7 年前
        1
  •  1
  •   Dmitri T    7 年前
    1. ForEach Controller 无法对对象进行操作,必须创建 JMeter Variables 形式为:

      var_1=a
      var_2=b
      

      您可以使用 vars 速记 JMeterVariables 类实例如下:

      vars.put("var_1", "a");
      vars.put("var_2", "b");
      

      enter image description here

    2. 然后您可以配置foreach控制器来使用 var 前缀并将输出存储到 ${current_var} jmeter变量:

      enter image description here

    3. 就是这样,foreach控制器将迭代创建的变量:

      enter image description here


    意识到 starting from JMeter 3.1 it's recommended to use JSR223 Test Elements and Groovy language 用于脚本编写 Groovy performance is much better than Beanshell . 此外,Groovy更为“现代”语言,它支持所有新的Java特性和 provides extra functionality 在标准JAVA SDK之上。