参数化是把用例中的数据存到变量/参数中(本质就是把数据传给后面的函数或方法,作为实参)通过参数驱动整个测试,也叫作数据驱动测试
用于执行大量的测试用例
特点
只支持txt、csv、json文件格式
csv,txt文件第一行必须是列名,以逗号间隔各列数据
文件中的数据读到参数中(工具中自带循环,循环一次取文件中的一行,一行中的一列存到一个参数中)

步骤

创建请求、发送请求
添加断言
猪呢比参数化数据(准备参数化用例文件)
参数化
把具体数据改为变量
image.png
txt和csv中都用逗号间隔各列数据

  1. case_id,case_name,username,password,前置条件,Status,Result,Message
  2. login_01,测试成功登录,test01,123456,将test01123456加密写入到users表,1000,Usercheck ok,登录验证成功
  3. login_02,测试用户名为空,,123456,删除users表中的''(空字符串)用户,1001,Username is null,用户名不能为空
  4. login_03,测试密码为空,test02,,将test02123456加密写入到users表,1002,Password is null,密码不能为空
  5. login_04,测试用户名和密码均为空,,,删除users表中的''(空字符串)用户,1001,Username is null,用户名不能为空
  6. login_05,测试用户名错误,test03,123456,删除users表中的test03用户,1003,Username error,用户名错误
  7. login_06,测试密码错误,test04,123,将test04123456加密写入到users表,1004,Password error,密码错误
  8. login_07,测试用户名和密码均错误,test05,123,删除users表中的test05用户,1003,Username error,用户名错误

用例名必须有列名,代码中使用data.文件类名引用,界面中使用{{文件列名}},保存请求

  1. string_actual=responseBody
  2. Status_actual=JSON.parse(string_actual).Status
  3. Result_actual=JSON.parse(string_actual).Result
  4. Message_actual=JSON.parse(string_actual).Message
  5. // 预期内容,从用例文件中获取
  6. Status_expect=data.Status
  7. Result_expect=data.Result
  8. Message_expect=data.Message
  9. case_id=data.case_id
  10. case_name=data.case_name
  11. // 断言
  12. tests[case_id+':'+case_name]=Status_actual==Status_expect &&Result_actual==Result_expect && Message_actual==Message_expect

运行测试集—点击文件夹中的Run
image.png
image.pngimage.png