在 Postman 中使用集合变量

Using Collection Variables in Postman

learning.getpostman.com 站点上的所有示例都展示了如何在 globalenvironment 级别保存变量,以便从一个请求到另一个请求获取值。

例如:

pm.environment.set(variableName:String, variableValue:String)
pm.environment.get(variableName:String)

pm.globals.set(variableName:String, variableValue:String) 
pm.globals.get(variableName:String)

分别。

是否可以改用集合?

阅读关于 pm. API 的 documentation 并没有给我太多希望。

我正在寻找这样的东西:

pm.collection.set(variableName:String, variableValue:String)
pm.collection.get(variableName:String)

我的目标是能够 运行 两个集合没有交叉污染。

编辑

邮递员进化。如果你 read the documentation 也可以在集合中设置变量,而不是在环境中。请注意,如果您在两个地方都设置了同名变量,则使用 {{variablename}} 可能不会产生预期的结果。 例如,如果集合变量和环境变量具有 完全相同的名字,它们仍然是两个完全不同的变量。

可更新的最新 Postman 版本 (7.9.0) 附带一个新的 pm.collectionVariables 功能,这使用户可以更好地控制他们在集合级别与变量交互的方式。

以前,您只能手动添加这些变量,然后使用 pm.variables.get("var_name") 函数在沙箱环境中访问它们。

新的pm.collectionVariablesAPI方法具有以下功能:

 .get(“var_name”)
 .set(“var_name”, “var_value”)
 .has(“var_name”)
 .unset(“var_name”)
 .clear()
 .toObject()

语法示例如下:

pm.collectionVariables.set("collectionVariable", "My Awesome New Collection Level Variable");

这是从 Tests 选项卡设置集合级别变量的基本示例: