Newman 是什么
Postman 负责编写与调试接口用例,Newman 是官方命令行运行器:把导出的集合与环境文件在终端或 CI 里跑起来并产出报告。标准工作流是——Postman 里写请求与 pm.test 断言,导出 JSON 进版本库,CI 用 newman 执行;数据文件支持按行迭代,一套集合覆盖多组数据。
基本信息
| 导出物 | Collection v2.1 与 Environment JSON 两个文件 |
|---|---|
| 运行 | newman run collection.json -e env.json |
| 断言 | 在 Tests 脚本里用 pm.test 与 pm.expect 表达 |
| 数据驱动 | -d data.csv 按行迭代,变量用列名引用 |
| 报告 | --reporters cli,json,htmlextra 等,htmlextra 产 HTML |
| 流程控制 | --folder 只跑某文件夹、--bail 首错即停、-n 重复次数 |
命令示例
命令示例
newman run api.postman_collection.json -e ci.postman_environment.json
newman run api.json -e ci.json -d users.csv --reporters cli,htmlextra
newman run api.json --folder "支付" --bail # 只跑支付文件夹,出错即停典型使用场景
- 接口冒烟进 CI:合并后自动跑核心集合
- 多环境复用:同一集合切换环境文件跑预发与测试环境
- 数据驱动:用 CSV 批量验证多账号与多币种场景
- 登录与变量传递:前置脚本拿 token 写进环境变量供后续请求用
- 定时巡检:计划任务定期跑核心接口,异常挂进通知渠道
- 集合进评审:断言改动随接口文档一起评审,口径不脱节
- 报告归档:HTML 报告挂到流水线产物,历史调查可回溯
要素与作用
| 要素 | 作用 | 注意 |
|---|---|---|
| Collection | 用例集合 | 进版本库并走评审 |
| Environment | 环境变量组 | 别放真实敏感凭据 |
| Tests 脚本 | 断言与提取变量 | 断言要覆盖响应体 |
| Pre-request | 请求前准备 | 登录与签名逻辑集中写 |
| Data 文件 | 迭代数据源 | 行数与期望对齐 |
集合文件就是代码:改动进版本库、走评审;直接在界面改再悄悄导出,等于改源码不留痕。
环境文件别存生产真凭据:CI 用注入的变量或专用测试账号,泄露面才能收住。
请求之间的依赖要写进脚本:靠手工执行顺序凑出来的绿灯,在 CI 里一跑就散架。
集合按业务文件夹分组:核心链路单独成夹,配合 --folder 实现先核心后长尾的分层执行。