最近遇到一个需求:使用jmeter发送请求,但请求的参数,要从我们给出的数组中随机抽取。
做完后,看网上关于此需求的文档不多,所以总结一下~
在mac中我们可以打开终端 cd到jmeter的bin目录下,通过sh jmeter来启动jmeter
cd /Users/admin/Desktop/apache-jmeter-4.0-perftest/bin
sh jmeter
创建自己需要的http请求或其他请求,右键创建好的请求:
Add => Config Element => User Defined Variables
就出现下面的界面
Name:可以理解为变量名
Value:可以理解为变量值
Description:描述(可以不用填了)
现在我们就可以把数组的元素填入,为每个值取一个具有相同前缀的name
我们只需要使用${Name}就可以得到对应的Value了,那会不会想到,接下来我们要做的就是随机拿到一个Name。
这就很简单了,他们具有相同的前缀,和有序的数字作为后缀。
${__Random(1,10,)} //得到1~10的随机数
userId_${__Random(1,10,)} //拼接出Name userId_1 userId_2 ...
${__V(userId_${__Random(1,10,)})} //通过不同的Name随机获取对应值
这样就可以实现随机从数组中取值作为参数发送请求啦