假设我有一个用户定义的参数bodies
,它是一个用空格分隔的任意长度的列表。我需要根据bodies
的长度创建一个HTTP请求循环,并使用其内容。
例如,如果bodies=a b c
,那么我需要在标头中使用a
进行HTTP POST请求,然后在标头中使用b
进行HTTP POST请求,依此类推。
我如何在JMeter中做到这一点?到目前为止,我已经能够使用JSR223采样器设置变量NUM_ITERATIONS
(在这种情况下将为3),但是我不知道如何在每次迭代中使用正确的参数进行循环。
答案 0 :(得分:0)
如果您可以控制“身体”变量的外观,可以将其转换为以下形式:
bodies_1=a
bodies_2=b
bodies_3=c
并使用ForEach Controller迭代所有元素。
可能的方法之一:
${__groovy(vars.get('bodies').split(' ').size(),)}
表达式放入“循环计数”节将用户定义参数中的值引用为
${__groovy(vars.get('bodies').split(' ')[vars.get('__jm__Loop Controller__idx') as int],)}
在需要的地方。
参考文献: