While循环控制器应用之遍历获取文件参数
测试环境
JMeter-5.4.1
应用
实现单线程在单次迭代内遍历获取文件参数
说明:上图仅给出关键配置信息
注意:
- CSV配置元件放循环内,每循环一次就会取一次参数值
- 不管CSV配置元件位于请求采样器上方,还是下方,都会优按CSV配置元件从配置文件获取参数,然后再执行请求采样器,所以无需在While控制器上方再添加一个“仓库配置信息”。
- 基于上述特性,需要配置
CSV Data Set Config
配置元件中的Stop thread on EOF ?:
为True
,否则会多循环一次,如果有需要,可以在循环内添加IF逻辑控制器,判断变量值为时不执行目标操作。 CSV Data Set Config
配置元件中的Recycle on EOF ?:
需要配置为False
,否则While控制器的Condition"${warehouse}" != "<EOF>"
永远成立。- 笔者后来实践发现,按上图配置,虽然脚本可以正常执行业务,但是查看控制台执行日志,存在报错,原因在于线程第一次执行while循环时,Condition中引用的变量
${warehouse}
不存在,所以最好对上述脚本进行优化,添加warehouse用户自定义变量