Postman读取外部数据文件(参数化)

Postman读取外部数据文件(参数化)

当 http请求,使用的 数据有较高相似度,相同的请求时,考虑使用参数化(将数据组织到数据文件中)。

数据文件简介

  • CSV:

    • 优点:
      • 数据组织形式简单,适用于大量数据的场合。
    • 缺点:
      1. 不支持 bool类型数据。(数据被 postman读入后,自动添加 “” 包裹bool值。)
      2. 不支持 多参、少参、无参、错误参数 的接口测试。
      3. 不支持复杂数据类型。(如 嵌套字典、列表等)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zSBmsmAX-1657249559668)(接口测试-第04天-课堂笔记.assets/image-20210711095615565.png)]

  • JSON:

    • 优点:
      1. 支持 bool 类型。
      2. 支持 多参、少参、无参、错误参数。
      3. 支持复杂数据类型。
    • 缺点:
      • 对于相同数据量,json数据文件大小远大于 CSV文件。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mRoNZ9aX-1657249559668)(接口测试-第04天-课堂笔记.assets/image-20210711095830591.png)]

导入外部数据文件

CSV文件

  1. 创建 xxx.csv 文件。

  2. 将数据写入到 csv文件中。

    • 第一行 写入 的是 数据对应的 “字段名”。
    • 从第二行向后依次是对应的数值,数据间用 英文逗号隔分。

    在这里插入图片描述

  3. 在 Postman 中,选中使用数据文件的 用例集,导入数据文件。

    1. 点击用例集名称,使用 Run 按钮,进入 “Runner” 页面。
    2. 使用 “Select File” 按钮选择 xxx.csv 文件。
    3. 点击 预览按钮,校验数据文件是否正确。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0ESWd6gW-1657249559669)(接口测试-第04天-课堂笔记.assets/image-20210711102644911.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lKjjQzQ3-1657249559670)(接口测试-第04天-课堂笔记.assets/image-20210711102431060.png)]

JSON文件

  1. 创建 xxx.json 数据文件

  2. 在 数据文件中,按json 语法写入json数据。postman要求,json格式的数据文件,数据内容的最外层,必须是 [ ] 。内部所有的数据用 {} 存储。( 建议:使用 json.cn 在线网站编写。)

  3. 在 Postman 中,选中使用数据文件的 用例集,导入数据文件。

    1. 点击用例集名称,使用 Run 按钮,进入 “Runner” 页面。
    2. 使用 “Select File” 按钮选择 xxx.json 文件。
    3. 点击 预览按钮,校验数据文件是否正确。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-suZZdcoD-1657249559670)(接口测试-第04天-课堂笔记.assets/image-20210711105123951.png)]

读取数据文件数据

理论

根据使用数据 位置 不同,有两种获取数据文件中数据的方法。

  • 第一种:请求参数(请求行、请求头、请求体)中,使用 数据文件中 的数据
    • 使用 {{}} 包裹 csv 文件 字段名 或 json 文件中的 key
      • 如: {{username}} 或 {{password}}
  • 第二种:代码(断言、请求前置脚本)中,使用 数据文件中 的数据
    • 需要借助 postman 提供的 关键字data 点 csv 文件的字段名 或 json文件的 key
      • 如: data.username 或 data.password

案例

需求:批量查询手机号归属地、所属运营商,校验运营商数据正确性

接口: http://cx.shouji.360.cn/phonearea.php?number=13012345678

测试数据:

​ 手机号: 13012345678 运营商: 联通
​ 手机号: 13800001111 运营商: 移动
​ 手机号: 18966778899 运营商: 电信

  1. 测试单个接口,工作中 参数和 响应体 数据对应关系。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L8Y14YYY-1657249559670)(接口测试-第04天-课堂笔记.assets/image-20210711114155244.png)]

  2. 写好数据文件,按 csv 或 json 对应语法的语法格式组织数据。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g9nnHz9I-1657249559670)(接口测试-第04天-课堂笔记.assets/image-20210711114357631.png)]

  3. 替换 上述用例中的 两处:

    1. 归属地:在 代码中。 用 data.字段名 替换
    2. 手机号:在 查询参数中。 用 {{字段名}} 替换。
  4. 强调:一旦替换完成,Send 就不再能正常获取 响应数据。(数据必须从数据文件中读取,才能正常发送请求,Send 不具备读取数据文件的功能)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Aqv3YSpd-1657249559671)(接口测试-第04天-课堂笔记.assets/image-20210711114722064.png)]

  5. 选择使用数据文件的用例集, 进入 Runner 页面。导入数据文件。运行。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ieVp9aiN-1657249559671)(接口测试-第04天-课堂笔记.assets/image-20210711114912888.png)]

  6. 如果有异常,借助 postman 的控制台,查看。

在这里插入图片描述

小结:借助 数据文件,实现 “数据驱动”。—— 有多少条数据,对应就有多少个 http请求。

生成测试报告

步骤:

  1. 批量执行测试用例(借助数据文件)

  2. 导出 测试用例集 (建议与 数据文件 放在一起)

  3. 执行生成测试报告的命令

    newman run 用例集名称.json -d 数据文件名.csv/.json -r html --reporter-html-export  报告名称.html
    
  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

炫酷的腿毛!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值