温馨提示×

Linux Postman如何进行环境变量管理

小樊
35
2025-12-19 23:32:59
栏目: 智能运维

Linux 上 Postman 环境变量管理指南

一 核心概念与优先级

  • 作用域类型与作用
    • 环境变量:对“当前所选环境”生效,适合管理开发/测试/生产等多套配置。
    • 全局变量:对整个 Postman生效,跨环境、跨集合通用。
    • 集合变量:对某个集合内所有请求生效。
    • 本地变量:仅在单个请求/脚本内有效。
    • 数据变量:用于Collection Runner批量运行,从 CSV/JSON 导入。
  • 优先级从高到低:本地变量 > 数据变量 > 环境变量 > 集合变量 > 全局变量。同名时,优先使用作用域更小的变量。

二 创建与切换环境

  • 创建环境
    • 打开 Postman → 左侧点击 Environments 或右上角齿轮 Manage EnvironmentsAdd
    • 输入环境名称(如:Development/Test/Production),在 KEY/VALUE 中添加变量(如:baseUrl)。
    • 建议同时维护 Initial Value(同步/协作用)与 Current Value(本机当前值)。
  • 使用变量
    • 在请求的 URL/Params/Headers/Body 中以 {{变量名}} 引用,例如:GET {{baseUrl}}/users
  • 切换环境
    • 通过右上角的环境下拉选择目标环境,所选环境的变量会立即生效于当前请求。

三 在脚本中读写变量

  • 常用脚本 API
    • 设置环境变量:pm.environment.set(“key”, “value”)
    • 读取环境变量:pm.environment.get(“key”)
    • 设置全局变量:pm.globals.set(“key”, “value”)
    • 读取全局变量:pm.globals.get(“key”)
  • 典型用法
    • 登录后自动保存 token:在登录请求的 Tests
      const json = pm.response.json();
      pm.environment.set("token", json.token);
      
    • 后续请求在 Headers 中使用:Authorization: Bearer {{token}}
    • 预请求动态切换:Pre-request Script 中根据条件设置变量
      if (pm.environment.get("env") === "production") {
        pm.environment.set("baseUrl", "https://api.prod.com");
      } else {
        pm.environment.set("baseUrl", "https://api.dev.com");
      }
      
    • 注意:脚本只能对已存在且有编辑权限的环境创建/修改变量。

四 导入导出与团队协作

  • 导入/导出
    • 在环境管理页面点击 Import 导入 .json 环境文件;也可 Export 导出以便备份或共享。
  • 同步与共享
    • 环境的 Initial Value 会与 Postman 账户同步,并与有权限的协作者共享;Current Value 仅在本机生效。
  • 删除提示
    • 若变量只存在于当前工作区,可能无法直接删除;可选择永久删除或先共享到其他工作区后再删除。

五 常见问题与排查

  • 变量未替换
    • 检查变量名拼写与大小写;确认已选择正确环境;在环境管理中确认变量已保存Current Value 非空。
  • 权限与脚本
    • 脚本设置变量失败,多见于无编辑权限目标环境不存在;先创建环境并赋予编辑权限。
  • 作用域冲突
    • 避免在不同作用域定义同名变量;若需统一值,优先使用全局变量或在脚本中显式设置所需作用域的变量。

0