咨询Postman Runner全局预请求脚本实现:单次清除集合变量
在Postman Runner中仅执行一次前置初始化脚本的方法
Postman本身没有直接提供Runner级别的全局前置脚本配置,但可以通过以下两种方式实现你要的「仅在Runner启动时执行一次pm.collectionVariables.unset("myVar")」的需求:
方法一:用Collection前置脚本+环境变量控制执行次数
在你要运行的集合的Pre-request Script里添加以下逻辑,通过环境变量标记是否已经执行过初始化,确保只在第一次迭代时运行:
// 检查是否未执行过初始化 if (!pm.environment.get("runnerInitDone")) { pm.collectionVariables.unset("myVar"); // 标记初始化已完成,后续迭代不再执行 pm.environment.set("runnerInitDone", true); }
注意:Runner运行结束后,记得手动删除环境变量runnerInitDone,否则下次启动Runner时会跳过这个初始化操作。
方法二:用Newman命令行工具实现
如果你习惯用命令行运行集合,Newman(Postman官方命令行工具)支持指定全局前置脚本,这个脚本会在整个Runner流程开始前仅执行一次:
- 新建一个单独的JS文件(比如命名为
init-runner.js),写入代码:
pm.collectionVariables.unset("myVar");
- 用Newman命令运行集合时,指定这个前置脚本:
newman run 你的集合文件.json --pre-request-script init-runner.js
内容的提问来源于stack exchange,提问作者Tom Carmi
相关产品推荐
相关产品推荐

