Postman 操作速查表 - API 调试工具常用操作大全

一条 curl 只能证明"这一次没报错",证明不了鉴权边界、也覆盖不了不同环境下的响应差异。Postman 把请求变成可感知环境、可写脚本的工作流。本表覆盖请求构建、环境/全局变量、pm.test 断言、前置脚本与动态数据,以及整集合运行和 Mock 服务。接口数量一多、需要反复回归 dev/staging/prod 时最合适。读完能把零散接口验证升级成可重复的自动化断言套件。

开发工具·共 35 条命令·最后更新 2026-07-21
postmanapi调试

请求构建 7

GET {{base_url}}/api/users
GET 请求
POST {{base_url}}/api/users
POST 请求
PUT {{base_url}}/api/users/1
PUT 请求
DELETE {{base_url}}/api/users/1
DELETE 请求
Headers: Content-Type: application/json
设置请求头
Body → raw → JSON
JSON 请求体
Authorization: Bearer {{token}}
Bearer Token 鉴权

环境变量 6

{{base_url}}
引用环境变量
pm.environment.set("token", "xxx")
设置环境变量
pm.environment.get("token")
获取环境变量
pm.environment.unset("token")
删除环境变量
pm.globals.set("key", "value")
设置全局变量
pm.variables.get("key")
获取变量(环境/全局)

测试脚本 6

pm.test("Status is 200", () => { pm.response.to.have.status(200) })
状态码测试
pm.expect(pm.response.json().name).to.eql("Alice")
JSON 字段测试
pm.response.to.be.json
响应是 JSON
pm.response.to.have.header("Content-Type")
响应头测试
pm.expect(pm.response.responseTime).to.be.below(500)
响应时间测试
const json = pm.response.json()
解析响应 JSON

前置脚本 4

pm.request.headers.add({key: "X-Token", value: "xxx"})
动态添加请求头
pm.request.body.update("new body")
修改请求体
const timestamp = Date.now(); pm.environment.set("ts", timestamp)
生成时间戳
pm.request.url.addQueryParams({page: 1})
添加查询参数

集合与运行 7

Collection Runner
批量运行集合
New Runner
新建运行器
Set Data File (CSV/JSON)
数据驱动测试
Delay: 1000ms
请求间隔
Iterations: 10
迭代次数
Export Collection
导出集合
Import from cURL / OpenAPI
导入集合

Mock 与文档 5

Mock Server
创建 Mock 服务
Example Responses
保存示例响应
Documentation
生成 API 文档
Publish Documentation
发布文档
Monitor
定时监控 API

命令示例

分层断言:状态码、字段与响应时间

pm.test("Status is 200", () => { pm.response.to.have.status(200) }) pm.response.to.be.json pm.expect(pm.response.json().name).to.eql("Alice") pm.expect(pm.response.responseTime).to.be.below(500)

第一条确认通道,第二条确认响应可解析,后两条确认契约与性能。响应时间断言能抓出「功能没坏但变慢了」的退化,这是状态码断言看不到的。

前置脚本注入动态值,再在测试里使用

const timestamp = Date.now(); pm.environment.set("ts", timestamp) pm.request.headers.add({key: "X-Token", value: "xxx"}) pm.request.url.addQueryParams({page: 1})

三条都在请求发出前生效:写环境变量、加请求头、追加查询参数。加请求头适合调用方标识这类需要动态生成的值,比在界面上手填更可控。

请求构建:变量化地址与方法

GET {{base_url}}/api/users POST {{base_url}}/api/users PUT {{base_url}}/api/users/1 DELETE {{base_url}}/api/users/1

把主机部分抽成 base_url 是环境切换的前提:同一份集合在 dev、staging、prod 上都靠改这一个值切换,请求本身一个字都不用动。

数据驱动:CSV 行数决定迭代的实际次数

Set Data File (CSV/JSON) Iterations: 10 Delay: 1000ms

数据驱动模式下实际次数取「迭代数」与「数据行数」中较小的一个,多余的行不会跑完。Delay 不是可选的保险:创建、更新、删除这类有先后依赖的请求,间隔不够就会读到上一步尚未生效的状态。

常见坑与注意事项

  • pm.globals.set 写入的值所有环境共享,容易把某个环境的地址或凭证泄漏到别的环境,敏感值一律放 Environment 并排除出版本库。
  • 前置脚本里的请求体改写发生在发送前,若同时在界面 Body 里填了内容,两者以脚本结果为准,容易造成「明明填了却没发出去」的困惑。
  • Delay 设成 0 时有依赖的请求会随机失败,间歇性红灯比确定性失败更难排查;有状态流转的集合必须留间隔。
  • Mock Server 的响应是按你保存的示例返回的,后端真实返回结构变动时若不同步更新示例,前端会在错误契约上继续开发。
  • Bearer token 之类凭据写死在请求里会随 Export Collection 一起导出并进入版本库,改用环境变量注入。

提示

  • 环境变量分 Environment(当前环境)和 Global(全局),敏感信息用 Environment。
  • Collection Runner 配合 CSV 数据文件可以做数据驱动测试。
  • Mock Server 适合前端并行开发,后端接口未完成时先用 Mock。

常见问题

环境变量和全局变量该怎么分配?

按「作用范围 + 敏感度」分。当前环境专属的地址、凭证放 Environment,因为切换 dev/staging/prod 时它们整体替换,其它环境不受影响;跨环境都需要的东西放 Global,比如格式约定或与后端无关的默认超时。敏感信息一律只放 Environment 并把它排除出版本库。读取时优先用 pm.variables.get,它会按优先级在环境与全局之间查找,简化判断;写入侧则用 pm.environment.set 或 pm.globals.set 明确指定去向。

一条断言该怎么写才有价值?

断言要能区分「接口坏了」和「业务数据变了」。只断言状态码 200 几乎没价值——返回空对象也是 200。有效的做法是分层:先断言状态码确认通道正常,再用 pm.expect(pm.response.json().name).to.eql("Alice") 这类字段断言确认契约没变,加一个响应时间断言捕捉性能退化。字段断言要选业务上稳定的字段(如 id 类型、状态字段取值),别选随时会变的展示内容。

前置脚本和测试脚本分别在什么时候跑?

按请求的生命周期:前置脚本在请求发出之前运行,用来准备动态内容——生成时间戳、写请求头、改请求体、加查询参数;测试脚本在响应返回之后运行,用来读响应做断言。所以同一个变量若由前置脚本产出,就只能在测试脚本里用,反之不成立。链式流程里靠这个顺序传递 token 或唯一键,是登录后自动带鉴权的常见做法。

怎么用一份集合跑出可重复的回归?

核心是把断言写进集合、而不是靠人眼看响应。用 Collection Runner 批量运行,再配合 Set Data File 提供 CSV/JSON 数据驱动,把同一组断言套在不同输入上跑。Iterations 控制重复次数、Delay 控制请求间隔——有依赖关系的流程需要留出间隔,否则前一请求写入的数据后一个请求还没读到。导出集合(Export Collection)后既能作为文档发布,也能让团队复用同一套断言。

后端接口还没写完,前端怎么并行开工?

用 Mock Server 配合 Example Responses。先按接口契约定义好每个请求的方法、路径和响应结构,保存为示例响应,再让 Mock Server 按这套定义对外提供接口,前端照常联调。契约先行还有个附带好处:等后端真正实现时,双方对字段名和类型的理解是一致的,减少后期返工。示例响应要按真实的成功、鉴权失败、参数错误几种情况分别保存,这样前端也能拿到异常态的页面。

官方参考来源

下方为命令对应的官方权威文档,供你核对最新用法与深入查阅。

由 巧匠 维护

公开更新于 2026年7月21日,内容持续校对官方文档。

联系我们

命令或描述有误?提交反馈、商务合作或产品建议都可发送邮件给我们。

联系我们