jmeter:需要执行x个HTTP请求,每个请求中的主体中有3个对象,每3个对象是从JSON提取器中选取

时间:2018-09-19 14:20:33

标签: jmeter

jmeter:需要执行x个http请求,每个请求中包含3个对象,这些对象是从每3个JSON提取器结果中选取的3个对象

我有一个http请求,该请求返回JSON并从那里提取我的数据。 结果是这样的列表 enter image description here 例如,可以容纳5、8、16或30等个对象。 这意味着arti_1,arti_2,arti_3等 到目前为止一切顺利。

我需要某种方式并创建x个新的http请求,每个请求中都包含3个元素(从结果中得出)。 我可以将它们全部放在列表中。

例如如果list是{a,b,c,d,e,f,g,h},那么我需要3个新的http请求

  • 第一个持有a,b,c
  • 第二次持有d,e,f
  • 第三次握住g,h

我应该如何在循环和计数器中应用它? 还是应该以其他方式完成?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

  1. Loop Controller添加到您的测试计划中
  2. 使用__groovy function来计算所需的循环次数,例如:

    ${__groovy(Math.ceil((vars.get('arti_matchNr') as int)/3) as int,)}
    

    上面的表达式将创建所需的循环数,即:

  3. 您可以在测试元素中以${__jm__Loop Controller__idx}或在Groovy脚本中以vars.get('__jm__Loop Controller__idx)的形式引用当前Loop Controller的迭代,以便根据当前循环值构建请求数据。不幸的是,由于我们不知道您将如何使用HTTP请求中的值,因此我们无法提供有关执行此操作的确切步骤。