Jmeter----在参数化的内容中随机获取入参传入请求中
1.说明
最近做压测,遇到一个场景,用户访问商品详情页,会调2个接口,传入商品code,返回最近浏览的商品信息
接口的入参是前端存在本地的,用户点击一个商品详情,前端记录一下,不需要后端返回
这样导致的问题就是,压测的时候这个入参,我怎么传的一个问题(既要传入正确的商品code,又需要传入不一样的商品code)
Jmeter----CSV Data Set Config_使用表格进行参数化
Jmeter----CSV Data Set Config_使用txt进行参数化
2.场景说明及操作步骤
步骤一:传入内容参数化
因为要传入正确的商品code,那只能从系统中获取多个,所以只能参数化
此时需要注意,参数化的文件中,每列填入一个商品code,填入多列
我用的.csv格式文件进行参数化,故可以在表格中查看(我准备了20个商品code)
步骤二:函数__CSVRead()
随便创建一个http请求,执行,查看能不能获取到我们想要的内容
CSV file to get values from | *alias:表示要读取的文件路径 (文件放在bin目录下课可填入相对路径)
CSV文件列号| next| *alias:表示当前变量读取第几列数据,注意第一列是0;
由此可见我们只需将参数化数据在csv中横向排列,然后用随机函数__Random()指定文件序列号即可。
我们可以更改列数的值,可以发现,可以取到我们想要的值
步骤三:函数__Random()
${__Random(0,19,)} 函数大多数人都知道,比如,当前的,可以生成0至19之前的随机数,包含0和19
那我们结合到一起使用
执行,会发现每次获取的都是在我们参数化文件中随机获取一个值出来,我们在入参的时候填入 ${__CSVRead(dunhill_miniApp_PDP2.csv,${__Random(0,19,)})} 即可