【问题标题】:Usage of item based on the condition - Jmeter根据条件使用项目 - Jmeter
【发布时间】:2020-03-13 14:34:32
【问题描述】:

我已经在用户定义的变量列表中定义了多个国家:

然后在另一个示例中,我使用特定国家作为前:PL

根据特定国家/地区的使用情况,进入循环的最简单方法是什么?

我知道 ${__groovy(vars.get("countries") == "AR")} 可以与 1 个国家/地区进行比较,但我如何将提取的国家/地区与列表中的所有国家/地区进行比较?

【问题讨论】:

    标签: groovy jmeter


    【解决方案1】:

    如果您需要迭代所有国家/地区,最好使用ForEach Controller,在这种情况下,您需要将countries 变量转换为以下模式:

    • country_1=PL
    • country_2=PT
    • country_3=RO
    • 等。

    如果您正在寻找 Groovy 代码来进行转换:

    1. 在需要“进入循环”的地方添加JSR223 Sampler
    2. 将以下代码放入“脚本”区域:

      vars.get('countries').trim().split(' ').eachWithIndex { country, index ->
          vars.put('country_' + ++index, country.trim())
      }
      
    3. 在 JSR223 Sampler 之后添加 ForEach Controller 并配置如下:

    4. 就是这样,您应该可以迭代所有国家/地区,在countries 变量中定义

    【讨论】:

    • 据我了解:我应该修改为:国家:country_1=PL country_2=PT country_3=RO country_4=AR 但是为什么匹配时没有进入循环?我做错了什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-10
    相关资源
    最近更新 更多