参数化
参数化用于执行大量用例,一般把用例存放在文件中,工具或者程序把文件中的数据读出来,存到参数/变量中,通过参数驱动整个测试,也叫做数据驱动测试
postman中的参数化
(1)postman只支持csv、json、txt文件
(2)csv和txt文件,第1行必须是列名,以逗号间隔各列数据
(3)文件中的数据读到参数中(工具中自带循环,循环一次取文件中的一行,一行中的一列存到一个参数中)
(4)参数怎么写
界面中:{{文件列名}}
代码中:data.文件列名
注意:到此时,不能调试,不能send发请求
(5)运行集合中的请求
指定参数文件,指定迭代次数(要执行多少条用例)
postman中的参数化步骤
a)写Excel用例(格式没有统一要求,按自己喜好或者公司规定)
①第一行写列名,最好英文或汉语拼音
通常写:用例名称、参数名(一个参数占一列)、预期结果
②从第2行开始,一行写一条用例
③注意,预期结果必须写准确(一个空格都不能不同、更不能有错别字),预期结果是按需求写,不是自己随便想的,也不是按实际结果写
④如果预期结果的类型是json,一般把整个预期的json字典写到预期结果列下,用{"键1":值1, "键2":值2}的形式去写即可
⑤用例名称尽量不要重复,写清楚
b)在请求中,将参数值替换为{{列名}}
c)在Tests中,添加断言,如果文件中的预期结果列叫expect,代码中要写data.expect,其他列名类似
d)参数化以后,不能在请求窗口中点send发送请求,因为还没选择用例文件,必须在Run窗口中选择文件,然后才能执行测试
e)在Run窗口中执行测试时,一次只能运行一个请求(一个请求中会执行很多用例),窗口中运行测试不支持同时读取多个用例文件
f)注意:使用Excel写用例,另存为csv文件,用记事本打开csv文件,另存为时,编码方式选择utf-8,以支持显示汉字
参数化测试exam/login功能
注意文件设置为UTF8
制作脚本
添加断言
编写参数文件
case_id | case_name | username | password | expect |
---|---|---|---|---|
login_01 | 测试登录成功 | test01 | 123456 | 登录成功 |
login_02 | 测试账号错误 | test08 | 123456 | 用户名或密码错误 |
login_03 | 测试密码错误 | test01 | 123 | 用户名或密码错误 |
login_04 | 测试账号为空 | 123456 | 用户名或密码为空 | |
login_05 | 测试密码为空 | test01 | 用户名或密码为空 |
参数文件
1)csv文件格式
用于存储测试用例(用例编号、用例名称、多列参数、预期结果)
2)json文件格式
将用例存在json文件中
效率较低,使用不便
3)txt文件格式
将用例存在txt文件中,用英文逗号间隔各列可以支持多列,Tab间隔只支持1列
效率较低,使用不便