微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 JMeter 中迭代 foreach 循环

如何解决如何在 JMeter 中迭代 foreach 循环

我从一个 API 获得数组响应,并将响应传递给另一个 API。 例如: 来自一个 API 的响应是 {status:200,data:{name:"Manikyam",selected_products:[1,2,3,4,5]}

我需要使用 foreach 或其他适合的循环从响应中迭代 selected_products。

迭代如下:

http://dummy.com/product/1

http://dummy.com/product/2

http://dummy.com/product/3

http://dummy.com/product/4

http://dummy.com/product/5

我尝试了一些方法,比如使用 forEach,但我没有任何运气。

extration from api response

foreach loop

each iteration

解决方法

以下答案假定您的响应是一个有效的 JSON,如下所示:

{
  "status": 200,"data": {
    "name": "Manikyam","selected_products": [ 1,2,3,4,5 ]
  }
}
  1. JSON Extractor 添加为返回上述 JSON 的请求的子代,并按如下方式配置:

    • 创建的变量的名称:任何有意义的,即product
    • JSON 路径表达式:$.data.selected_products.*
    • 匹配号:-1
  2. 添加ForEach Controller并配置如下:

    • 输入变量前缀:product
    • 输出变量名称:product
  3. 就是这样,如果您添加一个 Sampler 作为 ForEach Controller 的子级,控制器将迭代所有变量,因此您将能够将每个变量引用为 ${product} 其中需要像 http://dummy.com/product/${product}

演示:

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。