{{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;
为了获得测试窗口中的全局变量,您应该使用'postman.getGlobalVariable()'函数。
在你的例子中,应该是这样的:
tests["产品ID"] = jsonData。productId === postman.getGlobalVariable("productId1");