如何在Postman测试中读取环境变量?

时间:2014-01-28 22:45:29

标签: rest testing postman

我正在使用Postman的打包应用版本来编写针对我的Rest API的测试。我试图在连续测试之间管理状态。为了实现这一点,暴露给Javascript测试运行时的Postman对象具有设置变量的方法,但没有用于读取的方法。

postman.setEnvironmentVariable("key", value );

现在,我可以通过从当前环境中吸取值的{{key}}结构在下一次调用中读取此值。但是,这在测试中不起作用;它只适用于请求构建的东西。

那么,是否可以从测试中读取这些内容?

2 个答案:

答案 0 :(得分:85)

根据文档here,您可以使用

environment["foo"] OR environment.foo
globals["bar"] OR globals.bar

访问它们。

即;

postman.setEnvironmentVariable("foo", "bar");

tests["environment var foo = bar"] = environment.foo === "bar";

postman.setGlobalVariable("foobar", "1");

tests["global var foobar = true"] = globals.foobar == true;

postman.setGlobalVariable("bar", "0");

tests["global var bar = false"] = globals.bar == false;

答案 1 :(得分:5)

Postman更新了他们的沙箱并添加了pm.* API。虽然根据docs

,在测试脚本中读取变量的旧语法仍然有效
  

设置变量后,使用pm.variables.get()方法或,   或者,使用pm.environment.get()pm.globals.get()   取决于获取变量的适当范围的方法。该   method需要变量名作为参数来检索   存储在脚本中的值。