如何用Ubuntu Postman进行数据驱动测试
导读:在 Ubuntu 上使用 Postman 进行数据驱动测试 一 准备数据与集合 创建数据文件:支持 CSV 或 JSON。CSV 首行为列名,Postman 会将其作为数据字段;建议使用 UTF-8 编码,避免中文乱码。示例: CSV(...
在 Ubuntu 上使用 Postman 进行数据驱动测试
一 准备数据与集合
- 创建数据文件:支持 CSV 或 JSON。CSV 首行为列名,Postman 会将其作为数据字段;建议使用 UTF-8 编码,避免中文乱码。示例:
- CSV(data.csv)
username,password user1,pass1 user2,pass2 - JSON(data.json)
[ { "username": "user1", "password": "pass1" } , { "username": "user2", "password": "pass2" } ]
- CSV(data.csv)
- 在 Postman 中新建 Collection,添加请求,在请求参数、请求头或请求体中使用 { { 变量名} } 引用数据字段(如 { { username} } 、{ { password} } )。在请求的 Tests 标签准备断言脚本(如检查状态码、响应体字段等)。
二 在 Postman 图形界面运行数据驱动测试
- 打开 Collection Runner:在集合右侧点击 Run 或顶部菜单 Runner。
- 选择集合与请求,配置运行选项:
- Environment:选择环境(如 dev/test)。
- Iterations:留空,选择数据文件后会自动按数据行数迭代。
- Delay:每次迭代间隔(毫秒)。
- Data:选择准备好的 CSV/JSON 数据文件,可预览数据是否正确。
- 点击 Start Run 执行,查看 Test Results 面板中的通过/失败与日志,定位失败的用例与数据行。
三 在 Ubuntu 终端使用 Newman 批量运行
- 安装 Node.js 与 npm(略),然后全局安装 Newman:
npm install -g newman - 导出 Postman Collection 为 JSON(Collection v2.1 推荐),与数据文件同目录。
- 终端执行示例:
# 基本运行 newman run my-api-tests.json -d data.csv # 使用环境变量文件 newman run my-api-tests.json -d data.json -e dev.env.json # 生成 HTML 报告(需 newman-reporter-html) npm install -g newman-reporter-html newman run my-api-tests.json -d data.csv -r html --reporter-html-export report.html - 将命令放入 package.json 或 Makefile 脚本,便于在 Jenkins/GitLab CI 等 CI/CD 中调用。
四 关键脚本示例
- 使用数据字段进行断言(Tests 标签):
pm.test("Status code is 200", () => { pm.response.to.have.status(200); } ); pm.test("Response contains expected username", () => { const json = pm.response.json(); pm.expect(json.username).to.eql(data.username); } ); - 在 Pre-request Script 中读取数据并写入变量(也可用环境/集合变量):
pm.collectionVariables.set("username", pm.iterationData.get("username")); pm.collectionVariables.set("password", pm.iterationData.get("password")); - 动态设置请求头(示例):
pm.request.headers.add({ key: "Authorization", value: "Bearer " + pm.environment.get("token") } ); - 控制台调试输出:
console.log("Current username:", pm.iterationData.get("username"));
以上脚本使用 pm 对象完成前置处理、断言与日志输出,适配数据驱动迭代执行。
五 常见问题与最佳实践
- 编码与格式:CSV 请使用 UTF-8;文件末尾避免空行;CSV 中非数值会被自动加引号,字符串无需手动加引号;JSON 更适合复杂结构与布尔类型数据。
- 字段引用:请求参数用 { { 字段名} } ;脚本中用 data.字段名 读取当前迭代数据。
- 迭代与数据:选择数据文件后 Iterations 会自动匹配数据行数;CSV 首行为列名会被自动忽略/作为字段名。
- 运行配置:合理设置 Delay 避免接口限流;在 Runner 中预览数据,确认列名与请求变量一致。
- 持续集成:在 Jenkins/GitLab CI 中使用 Newman 执行并收集报告,实现自动化回归。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何用Ubuntu Postman进行数据驱动测试
本文地址: https://pptw.com/jishu/770159.html
