jmeter从文件中读取两个不同的值作为参数传入。
引言:
最近在做lr自带的订票系统的练习,其中有一个请求的传参是出发城市和到达城市。
当然出发和到达城市的值要不同。
请求如下:
肯定会先想到把上一个请求所有的出发城市和到达城市都关联出来,然后放在一个txt中。
第一种:
把出发城市、到达城市放在同一txt中。
jmeter中这样操作:
循环20次或者取20个线程组:
结果如下:
这样可以满足请求的中出发城市、到达城市不同的要求。
但是这个需要10x9=90种,才可以罗列出所有的出发城市、到达城市。
方法二:
jmter中有自带函数,可以帮助我们取得文本中随机列的值。
__CSVRead:
__Random,取一定范围内的随机数
这两个函数结合,就可以实现取文本中随机列的值。
在前置处理器中实现参数的处理:
1.随机取出两个值;
2.这两个值不能相等;
这里i<5,是因为如果写成while(true){}这样的话,循环100次,jmeter会死掉,有兴趣的小伙伴可以试试。
运行100次,结果如下:
第三种方法:
写java代码实现。
此时文本中的值是这样的:
这个方法的作用是读取文件随机行的数据。
然后取两个不同的随机数,传进去,就得到不同行的值了。
循环100次或者取100个线程,结果如下:
练习文件传送门:
点击打开链接