如何用postman设置接口测试关联

一、提取响应数据(Tests 脚本)

在第一个请求的Tests标签中编写脚本,提取需要关联的数据:

复制代码
// 示例1:提取JSON响应中的token
let responseData = pm.response.json();
pm.environment.set("token", responseData.token); // 保存到环境变量

// 示例2:提取cookies
pm.environment.set("sessionId", pm.response.headers.get("Set-Cookie").split(";")[0].split("=")[1]);

二、在后续请求中引用变量

在需要使用关联数据的请求中,通过{``{变量名}}引用:

复制代码
GET https://api.example.com/user?token={{token}}

三、变量作用域管理

  1. 环境变量 :用于特定环境(如开发 / 生产)

    复制代码
    pm.environment.set("变量名", "值");
  2. 全局变量 :所有请求通用

    复制代码
    pm.globals.set("变量名", "值");

四、进阶技巧

  1. Pre-request Script

    可在发送请求前生成动态数据:

    复制代码
    pm.environment.set("timestamp", Date.now());
  2. JSON 路径提取

    使用jsonpath库简化复杂数据提取:

    复制代码
    const jsonData = pm.response.json();
    pm.environment.set("userID", jsonData.data[0].id);
  3. 断言验证

    在 Tests 中添加验证确保数据正确传递:

    复制代码
    pm.test("token存在", () => {
      pm.expect(pm.environment.get("token")).to.not.be.null;
    });

五、示例流程

  1. 登录请求
    • Tests 脚本保存 token 到环境变量
  2. 获取用户信息请求
    • 在 Authorization 头中使用{``{token}}

建议通过 Postman 的Variables 面板管理变量,使用Collections Runner 执行批量测试验证关联效果。对于复杂场景,可结合Newman实现 CI/CD 集成。

相关推荐
测试界的海飞丝9 小时前
10道软件测试面试题及其答案:
服务器·测试工具·职场和发展
REDcker10 小时前
tcpdump 网络数据包分析工具完整教程
网络·测试工具·tcpdump
程序员念姐1 天前
软件测试系统流程和常见面试题
测试工具·面试
西游音月1 天前
(5)pytest+Selenium自动化测试-元素定位之XPath定位
selenium·测试工具·pytest
L.Ru1 天前
SIP抓包工具-sngrep的使用
测试工具·信息与通信·sngrep
卓码软件测评1 天前
第三方软件测评机构:【Gatling与JMeter的架构对比:异步与非阻塞I/O模型如何实现更高并发】
测试工具·jmeter·架构·测试用例·负载均衡·压力测试
美团程序员1 天前
一篇文章教你搞定:”xx 功能如何测试?“常见面试题型!
测试工具·面试·职场和发展·测试用例
软件测试雪儿2 天前
高频Postman软件测试面试题
测试工具·lua·postman
2501_915106322 天前
iOS App 测试工具全景分析,构建从开发调试到线上监控的多阶段工具链体系
android·测试工具·ios·小程序·uni-app·iphone·webview
小白学大数据2 天前
构建混合爬虫:何时使用Requests,何时切换至Selenium处理请求头?
爬虫·python·selenium·测试工具