You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Postman中针对多环境批量运行集合内所有请求?

实现多环境按序执行Postman集合的简便方法

方法1:用Newman命令行(最直接省心)

Newman是Postman官方的命令行工具,专门用来批量跑集合测试,完美匹配你的需求。

操作步骤:

  1. 先把你的集合导出成JSON文件(比如叫my-collection.json),再分别把dev、test、uat三个环境也导出成独立的JSON文件(dev-env.json、test-env.json、uat-env.json)
  2. 写个简单的脚本一次性执行:
    • Windows下存成.bat文件双击运行:
      newman run my-collection.json -e dev-env.json
      newman run my-collection.json -e test-env.json
      newman run my-collection.json -e uat-env.json
      
    • Mac/Linux下写个Shell脚本(.sh):
      #!/bin/bash
      # 遍历三个环境文件,依次跑集合
      for env_file in dev-env.json test-env.json uat-env.json
      do
          newman run my-collection.json -e $env_file
      done
      

执行后就会先把dev环境的A、B、C请求全跑完,再跑test环境的所有请求,最后是uat,完全符合你的顺序要求。

方法2:Postman客户端内用脚本+循环(不用命令行的方案)

如果不想折腾命令行,也可以在Postman客户端里用集合脚本+运行器循环实现:

  1. 先拿到三个环境的ID:进入每个环境的设置页面,复制页面里的环境ID
  2. 在集合的Pre-request Script里加这段代码(把里面的ID换成你自己的):
    // 把三个环境的ID列出来
    const targetEnvs = ["你的dev环境ID", "你的test环境ID", "你的uat环境ID"];
    // 用集合变量记录当前跑的是第几个环境
    let currentIndex = pm.collectionVariables.get("envLoopIndex") || 0;
    
    if (currentIndex < targetEnvs.length) {
        // 切换到当前要跑的环境
        pm.environment.set("activeEnvId", targetEnvs[currentIndex]);
        // 跑完这个环境后,索引加1
        pm.collectionVariables.set("envLoopIndex", currentIndex + 1);
    } else {
        // 跑完所有环境后重置索引,方便下次执行
        pm.collectionVariables.set("envLoopIndex", 0);
    }
    
  3. 打开集合运行器,选择你的集合,然后设置循环次数为3次(对应3个环境),启动运行后就会自动切换环境,按顺序执行所有请求。不过这个方法要注意循环次数必须和环境数一致,比命令行麻烦点。

方法3:Postman Monitor(定时自动执行的场景)

如果需要定时自动跑这个任务,比如每天凌晨执行,就用Postman Monitor:

  1. 新建一个Monitor,选择你的目标集合
  2. 在Monitor的设置里,把dev、test、uat三个环境都加进去,设置执行顺序为依次运行
  3. 配置好执行频率(比如每天一次),之后Monitor就会自动按要求的顺序,在每个环境下跑完所有请求。

内容的提问来源于stack exchange,提问作者fascynacja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 13:05:19