【发布时间】:2018-02-09 23:34:37
【问题描述】:
我在断言之前将字符串值(保存为环境变量)转换为布尔值时遇到问题。
我目前在我的 Postman 测试中有这个:
var regDB_p2018 = pm.environment.get("u_p2018");
pm.expect(jsonData.premiumTO.particip2018).to.deep.equal(regDB_p2018);
运行后我收到消息:
测试注册用户| AssertionError: 期望 true 等于 'true'
我认为问题在于环境变量 u_p2018 因为它在文件中保存为字符串,但在 JSON 的响应消息中,jsonData.premiumTO.particip2018 的值是布尔值。
我如何在做出断言之前将u_p2018 的值转换为布尔值?
其他信息:
在第一个请求中,我将script_1 中的以下值设置为初始值:
pm.environment.set("u_p2018", true);
pm.environment.set("u_p2020", false);
然后我在第二个Request中注册POST请求:
{
"personId": 0,
"name": "Sample",
"email": "sample@gmail.com",
"account": {
"userName": "sample@gmail.com",
"rejectMessage": "",
"admin": false
},
"premiumTO": {
"name": "Bbthvn",
"particip2018": true,
"particip2020": false,
"address": {
"addressId": 0,
"country": "U.S.A",
"city": "NY",
},
"photo": null,
"quoteVerified": false
}
}
然后在收到响应消息后的第二个请求的script_2 中,我进行以下检查:
var var_regDB_p2018 = pm.environment.get("u_p2018");
var var_regDB_p2020 = pm.environment.get("u_p2020");
pm.expect(jsonData.premiumTO.particip2018).to.deep.equal(var_regDB_p2018);
pm.expect(jsonData.premiumTO.particip2020).to.deep.equal(var_regDB_p2020);
【问题讨论】:
-
到目前为止你尝试过什么?你做了什么研究?显示你在问题中做了什么。显示
jsonData.premiumTO.particip2018的值是什么,甚至更好地发布响应数据。您需要更多地扩展您的问题并添加更多详细信息 - stackoverflow.com/help/how-to-ask -
我在主字段中发布,因为它没有被接受为评论。部分附加信息:希望它有所帮助。
-
如果您在任何时候有其他信息来扩展问题,您应该将其作为更新添加到该信息中,而不是在 cmets 中。
标签: postman