在接口和性能测试中,除了上次讲解的关联比较常用外,参数化也是jmeter的必学功能之一。
一般在接口测试中,我们希望一次运行脚本能够执行多个用例,不同用例之间取不同的参数值,从而实现批量执行不同场景下的接口功能。比如用户登录时各种参数值,查询不同区间的数值等。
参数化的本质,就是数据驱动,用动态的数据替代固定参数。
jmeter中常用参数化方式有以下三种:
一.用户参数
1.用户参数元件,添加步骤如下
![](https://i-blog.csdnimg.cn/blog_migrate/489fe598c965017a7d8a9ee521d307c1.png)
2.点击添加变量按钮,添加变量名,可添加多个变量名。点击添加用户,增加变量值个数,在对应的输入框输入参数值。
添加完成后,记得勾选每次迭代更新一次。
![](https://i-blog.csdnimg.cn/blog_migrate/9e0f78f0965e87be7ec6ed5a0549a8a7.png)
3.修改http请求中get请求参数为上一步定义的变量:${city_name},当然,还可以将参数值添加到请求名称中。
![](https://i-blog.csdnimg.cn/blog_migrate/10ec54303edd2ab4fe8405831b48bfd1.png)
4.修改线程组为5,点击运行,查看运行结果如下:
![](https://i-blog.csdnimg.cn/blog_migrate/d503bb22675fbcf3dbabf258b8f656bf.png)
二、函数助手
函数助手是一种特殊的参数化方式,按照一定规则生成数据,比如生成随机数或者随机字符串等。
![](https://i-blog.csdnimg.cn/blog_migrate/bfb3e85e3c08e92a8c1c6864a194f0c9.png)
比如生成一个随机数函数:
填写最小值、最大值,然后点击生成,生成后的字符串直接复制到需要的地方就可以使用了。
![](https://i-blog.csdnimg.cn/blog_migrate/5dc2b4ae49b06237ef7686975dc3c5fc.png)
常用的函数:
随机数:Random
取当前时间:time
唯一ID:__UUID
三、配置元件-CSV Data Set Config
配置元件CSV Data Set Config是最常使用的一种参数化方式,它通过读取指定的文件(一般为txt,csv格式)数据,根据分隔符将每一行数据与变量名对应起来,每个请求读取不同行的值,从而实现参数化。
1.选择请求,右键依次选择添加->配置元件->CSV Data Set Config
2.新建如下txt文件,填写CSV Data Set Config参数配置
![](https://i-blog.csdnimg.cn/blog_migrate/e6fb667b30bd7424f9e261aed9b84d60.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0c36205d707c71c828514c3caea1f792.png)
具体参数说明,下面有。
3.修改请求参数和线程数
![](https://i-blog.csdnimg.cn/blog_migrate/d9e34cbe7bcd498114c39889ca9342d6.png)
4.点击运行,结果如下:
![](https://i-blog.csdnimg.cn/blog_migrate/d376af3f8416bae4305e4814fc719290.png)
参数含义如下
![](https://i-blog.csdnimg.cn/blog_migrate/a3584ced3659c424e36c96139000113a.png)
小技巧
除了上面讲到的几种,还有一种常用来做全局变量的方式,可用来填写IP、端口等,切换环境的时候超级方便,大家可以试试看。
![](https://i-blog.csdnimg.cn/blog_migrate/319811b17a8df27bba603614890324de.png)
推荐阅读
文章好看点这里