邮递员:全局变量存储为字符串?

时间:2016-09-23 20:03:13

标签: postman

{{productId1}}等于1.

这是请求:

localhost:9000/test/product/{{productId1}}

它起作用并让我回报:

{
  "productId": 1,
  "title": "Hat X",
  "description": "This is Hat X."
}

但是,它没有测试:

var jsonData = JSON.parse(responseBody);
tests["Status code is 200"] = responseCode.code === 200;
tests["Product ID"] = jsonData.productId === "{{productId1}}";
tests["Title"] = jsonData.title === "Hat X";
tests["Description"] = jsonData.description === "This is Hat X.";

第三行一直在失败。到底是怎么回事?是因为productId1被读作字符串吗?如果是这样,我试图将其解析为整数,没有运气。如何在不丢失类型的情况下通过它?

我试过了:

tests["Product ID"] = jsonData.productId === "{{productId1}}";
tests["Product ID"] = jsonData.productId === "{{$productId1}}";
tests["Product ID"] = jsonData.productId === {{productId1}};
tests["Product ID"] = jsonData.productId === productId1;

1 个答案:

答案 0 :(得分:2)

为了在测试窗口中获取全局变量,您应该使用' postman.getGlobalVariable()'功能

在你的情况下,它应该是:

测试["产品ID"] = jsonData.productId === postman.getGlobalVariable(" productId1");