All the examples on learning.getpostman site show how to save variables at the global or environment level, in order to get a value from one request to another.
For example:
pm.environment.set(variableName:String, variableValue:String) pm.environment.get(variableName:String) pm.globals.set(variableName:String, variableValue:String) pm.globals.get(variableName:String)respectively.
Is it possible to use Collections instead?
Reading the documentation about the pm. API doesn't give me much hope.
I am looking for something like this:
pm.collection.set(variableName:String, variableValue:String) pm.collection.get(variableName:String)My goal is to be able to run two collections without cross-contamination.
EDITPostman evolves. If you read the documentation it is also possible to set the variables in the collection, instead of in the environment. Be aware that if you have variables with the same name set in both places, using {{variablename}} may not result in the desired outcome. For example, if a collection variable and an environment variable have the exact same names, they are still two completely different variables.
解决方案The latest Postman version available to update (7.9.0), ships with a new pm.collectionVariables function, this gives users more control over the way that they interact with Variables, at the Collection level.
Previously, you could only manually add these variables and then access them in the sandbox environment using the pm.variables.get("var_name") function.
The new pm.collectionVariables API method comes with the follows functions:
.get("var_name") .set("var_name", "var_value") .has("var_name") .unset("var_name") .clear() .toObject()An example of the syntax would be this:
pm.collectionVariables.set("collectionVariable", "My Awesome New Collection Level Variable");
This is a basic example of setting a Collection level Variable from the Tests tab:
更多推荐
在 Postman 中使用集合变量
发布评论