如何用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 集成。

相关推荐
秃了也弱了。2 小时前
WireShark:非常好用的网络抓包工具
网络·测试工具·wireshark
敲上瘾4 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
天才测试猿9 小时前
常见的Jmeter压测问题
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·压力测试
测试开发Kevin2 天前
详解grafana k6 中stage的核心概念与作用
测试工具·压力测试·grafana
天才测试猿2 天前
接口自动化测试难点:数据库验证解决方案
自动化测试·软件测试·数据库·python·测试工具·职场和发展·接口测试
Mr_Xuhhh3 天前
HTTPS 协议原理
网络·网络协议·测试工具·http·https
测试开发Kevin4 天前
详解k6中的核心概念——场景(Scenarios)
测试工具·压力测试
中草药z4 天前
【测试】Bug+设计测试用例
功能测试·测试工具·测试用例·bug·压力测试·测试
进阶的小名5 天前
@RequestMapping接收文件格式的形参(方法参数)
java·spring boot·postman