我需要建立一个从CSV文件中提取多行的批处理请求。不幸的是,每个请求只从CSV文件中提取一行。因此,像[ ${order}, ${order} ]这样的请求将产生像[100, 100]这样的具有相同订单ID的请求。有些人建议使用JSR223预处理器,但是该解决方案需要为每个请求加载CSV文件,这看起来效率很低。谢谢
[ ${order}, ${order} ]
[100, 100]
jdg4fx2g1#
1.您可以查看__CSVRead()函数,在该函数中,您可以完全控制何时在何处继续到下一行1.你可以看一下__StringFromFile()函数,它在每次被调用时都会从文件中读取下一行1.使用JSR223测试元素的方法很好,如果您想避免每个线程每次都阅读整个文件,您可以在setUp Thread Group中的某个位置执行一次,然后将整个文件放入JMeter Properties中,或者在那里复制单独的行。
List<String> lines = new File('test.csv').readLines() props.put('lines', lines) //or 1.upto(lines.size(), { props.put("line_$it", lines.get(it - 1)) })
1条答案
按热度按时间jdg4fx2g1#
1.您可以查看__CSVRead()函数,在该函数中,您可以完全控制何时在何处继续到下一行
1.你可以看一下__StringFromFile()函数,它在每次被调用时都会从文件中读取下一行
1.使用JSR223测试元素的方法很好,如果您想避免每个线程每次都阅读整个文件,您可以在setUp Thread Group中的某个位置执行一次,然后将整个文件放入JMeter Properties中,或者在那里复制单独的行。