Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求

场景:新增一个账单,读取账单的收/支类型Income和对应的账单类型paymenttype作为请求的值,Income会根据paymenttype的不同而变化。

由于Foreach只支持一个变量的输入,因此需要借助__V函数来嵌套变量

主要有四个步骤:

一:从请求里通过正则来获取paymenttype的值和对应的Income

Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求

Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求

二:添加JSR223 sample设置countpaymentIds的长度

Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求

三:设置Foreach和__V函数(可以使用函数助手生成)

Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求

这里注意一个会导致读取不到值的问题:函数助手生成的是:${__V(paymenttype_${counter},)} ,运行的时候一直取到空值,需要将最后一个“,”去掉,没有默认值:${__V(paymenttype_${counter})}  

四:变量作为HTTP请求的参数输入

Jmeter-Foreach控制器-循环两个变量的值传递给下一个请求