接口测试很重要,有些请求参数都是重复的或者是可以随机的,那么就需要我们进行接口参数化。
接口参数化有多种方式:
1、用户参数
(1)打开Jmeter,选择线程组,右击添加一个用户参数。
(2)在这里我们就可以新增一些变量和变量的值。下面的Add Varible就是添加变量;Add User就是添加变量的值;Delete Varible就是删除变量;Delete User就是删除变量的值。上面的Update Once Per Iteration就是指每次迭代更新一次。
(3)以我的这个为例,我设置了一个变量,假设是userid,设置了三个值为44448、44452、44456
(4)选择线程组,设置它的属性
(4)更改了Number of Threads为4,然后我们建一个新的HTTP REQUEST。
图片就是做个简单的例子,作为参考。然后你直接运行这个接口,查看结果数即可,参数会直接使用用户参数设置的。设置了Number of Threads为4,所以会跑四次接口,参数userid的值分别为44448、44452、44456、44448
2、用户定义变量
(1)选择线程组,右击添加User Defined Variables
(2)用法和用户参数是一样的,格式还是${变量名},然后就是执行接口,查看结果即可。
3、函数助手
(1)打开Jmeter,工具栏选择函数助手
函数助手里面自带了很多的函数,我们列举几个函数举例。
<1>Random函数
最上面下拉框是可以选择的函数;Function Parameters:函数参数,最大值、最小值和参数化的名称;Function syntax:函数语法;The result of the function is:函数的结果;Generate点击之后生成字符串,用于接口使用。
<2>CSVRead函数
首先我们新建一个txt文档,在里面输入我们定义的变量值。
中间用英文逗号隔开,最后讲文本文档保存为.dat文件,保存在自己的电脑目录下。
打开函数助手,选择CSVRead函数
CSV file to get values from | *alias:填写的是.dat文件的路径
Column number of CSV file | next *alias:填写的是第几列从0开始计算。
点击Generate&Copy to clipboard,则会生成对应的字符串。
这边是一个签到接口,两个参数一个是用户id一个是签到的时间,我们定义了函数,所以对应的请求体就是按照上图写。执行接口即可。
4、CSV文件
点击线程组右击新建CSV Data Set Config
Filename:.dat文件的路径,点击浏览选择即可
File encoding:UTF-8
Varible Name:变量名
Delimitet:分隔符用英文的逗号,
Allow quote data:是否允许引用数据
Recycle on EOF?:是否循环读取参数文件内容
Stop thread on EOF?:当Recycle on EOF为False时(读取文件到结尾),停止进程;当Recycle on EOF为True时,无意义
Sharing mode:是否试用于整个线程或者有其他设置可以下拉选择
然后去接口引用
参数的格式依然是${变量名}
以上就是总结了四种参数化的方式,仅供学习参考,哈哈哈