概述
参数化是自动化测试的一种常用方法。通常用法就是将脚本中的某些固定值通过参数来代替,在脚本运行时可以指定参数的取值范围和规则,它可以是常量也可以是变量。这样,脚本在运行时就可以根据需要选取不同的参数值作为输入。它通常被称为数据驱动测试,参数的取值范围被称为数据池。jmeter 的 test plan 中,支持如下两种参数化方式:
函数助手中的csv参数化
首先准备你的参数数据。我在bin/data中新建了一个dat文件,记事本另存为修改编码为UTF-8,注意用户名和密码是一一对应的,用英文逗号隔开
点击函数助手对话框,填写数据文件路径与列数
点击生成,生成函数
将生成的函数填入Parameters值中,注意参数与列数的对应关系!
我们刚刚在数据中填入了三个参数,这里我们需要修改一下线程。且将线程改为3
执行一下脚本,观察结果树。可以发现请求发送了三次,每次的用户名不同。
CSV Data Set Config
借助jmeter中的配置原件:CSV Data Set Config
在使用 JMeter 的时候,往往需要参数化一些数据,常用到的就是 CSV Data Set Config
Filename:文件名,指保存信息的文件目录,可以相对或者绝对路径(比如:D:\ceshi.Txt)
File encoding:csv 文件编码,可以不填
Variable Names:变量名,多个变量用“,”分开
Delimiter:csv 文件中的分隔符(用”\t”代替 tab 键)(一般情况下,分隔符为英文逗号)
Allow quoted data:是否允许引用数据
Recycle on EOF :到了文件尾处,是否循环读取参数,选项:true 和 false。因为CSV Data Set Config 一次读入一行,分割后存入若干变量交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入
Stop thread on EOF:到了文件尾处,是否停止线程,选项:true 和 false
配置 CSV Data Set Config
在json数组中引入变量,执行并查看结果树
可以看到执行了三次,每次传入的用户名不同