Jmeter实现在请求param和body里面加入随机参数

需求:使用jemeter实现新增接口压力测试,因为接口参数存在着很多唯一约束,所以不能新增参数一样的数据,所以需要在参数或者消息体里面添加随机数据,实现压力测试的需求。

Jmeter生成随机参数的方式有很多,我这边整理了常用的参数,不唯一,分享给大家,帮大家避坑。

一.先生成随机数

1.使用函数助手对话框生成随机数

如图,打开下面的函数助手之后,选择ramdom函数之后,再选择范围(我这里选择的是1-1000),点击生成即可随机生成1-1000的随机整数(点击生成按钮之后软件会自动复制表达式到剪切板,直接使用即可

Jmeter实现在请求param和body里面加入随机参数_第1张图片

${__Random(1,1000,)}    表示随机1-1000的随机整数

${__RandomDate(yyyy-MM-dd,,,,)}  表示随机生成yyyy-MM-dd格式的日期,还可以指定具体开始的时间等

对于id,可能随机数会导致重复,可以使用递增的计数器来实现。

Jmeter实现在请求param和body里面加入随机参数_第2张图片

 Jmeter实现在请求param和body里面加入随机参数_第3张图片

 然后你就可以获取一个递增的计数器,函数为 ${__counter(false,number)}

2.如果生成的随机数不能满足要求,还可以自定义参数。

Jmeter实现在请求param和body里面加入随机参数_第4张图片

 Jmeter实现在请求param和body里面加入随机参数_第5张图片

 

二.使用步骤一生成的随机数

1.生成的随机数作为参数放到请求中(get请求)

Jmeter实现在请求param和body里面加入随机参数_第6张图片

 2.生成的随机数作为body放到请求中(Post请求)

这里不管body是什么格式,json还是xml,text等任何格式都可以直接将上面生成的函数直接放入进去,实现自动随机生成参数。

Jmeter实现在请求param和body里面加入随机参数_第7张图片

 3.param和body同时存在并且需要随机生成参数的情况

jmeter有个特性,如果你的消息体数据里面非空,那么你点击参数是没有反应的,不允许再添加参数,所以你可以把你的参数写入到请求地址中

Jmeter实现在请求param和body里面加入随机参数_第8张图片

 

 

你可能感兴趣的:(开发工具,jmeter,压力测试,测试工具)