如何让JMeter的ISO8583 Sampler读取CSV文件所有行数据?
解决JMeter ISO8583 Sampler读取CSV所有行数据的问题
1. 配置CSV数据读取元件
- 右键目标线程组 → 「添加」→ 「配置元件」→ 「CSV Data Set Config」
- 填写核心配置项:
- Filename:填入CSV文件路径(推荐用相对路径,比如
./test_data.csv) - Variable Names:按CSV列顺序定义变量名,列间用逗号分隔,例如
cardNo,transAmt,expDate - Delimiter:设置CSV的分隔符(常规为逗号
,,制表符分隔填\t) - Recycle on EOF?:设为
False(读取到文件末尾不再循环) - Stop thread on EOF?:设为
True(读完所有行后自动终止线程)
- Filename:填入CSV文件路径(推荐用相对路径,比如
2. 将CSV变量绑定到ISO8583 Sampler
打开ISO8583 Sampler的请求配置页,把每个数据元素的固定值替换为对应CSV变量。比如把卡号固定值改成${cardNo},交易金额改成${transAmt}。
3. 设置线程组循环策略
- 若不确定CSV总行数,用JMeter内置函数动态获取:
- 右键线程组 → 「添加」→ 「配置元件」→ 「用户定义的变量」
- 添加变量
totalRows,值填${__CSVRead(./test_data.csv,-1)}(-1代表读取CSV总行数) - 回到线程组,将「Loop Count」设为
${totalRows}
- 若已知CSV行数,直接把线程组的「Loop Count」填对应数字即可。
4. 验证执行效果
添加「查看结果树」元件,运行测试后检查每一条请求的参数,确认ISO8583 Sampler依次使用了CSV的每一行数据。
内容的提问来源于stack exchange,提问作者Grs007
相关产品推荐
相关产品推荐

