如果 key:value 存在,我想检查我的 JSON 响应数组。并且我想如果键:值被发现从循环出去,并得到测试结果。 你能支持我怎么做吗?
例如,我有以下回应:
[
{
"persID": "personID_1",
"vip": false,
"account": {
"contactName": "value1",
},
"premium": {
"Name": "value2",
"Director": "value3",
"company": "value7",
"homePage": "value6",
"address": {
"country": "value8",
"city": "value9"
},
"photo": value10
}
},
{
"persID": "personID_2",
"vip": false,
"account": {
"contactName": "value11",
},
"premium": {
"Name": "value12",
"Director": "value13",
"company": "value17",
"homePage": "value16",
"address": {
"country": "value18",
"city": "value19"
},
"photo": value110
}
},
.....
.....// dynamic response can …Run Code Online (Sandbox Code Playgroud) 谁能帮助我,我几乎是邮递员的新手。
我的问题如下:
我发送一个 POST 请求并收到一条消息作为响应:
{ "errorCode": 1000, "errorDescription": "帐户未经管理员验证!" }
此消息已保存在名为“ messageAccountIsnotVerified ”的变量中
Run Code Online (Sandbox Code Playgroud)pm.test("test", function () { var jsonData = pm.response.json(); pm.expect(jsonData.errorCode).to.eql(1000); pm.expect(jsonData.errorDescription).to.eql("Account is not verified by Admin!"); });
但是当我尝试保存字符串文本“帐户未经过管理员验证!” 在名为: messageAccountIsnotVerified 的变量中 并尝试进行相同的比较
pm.test("test", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.errorCode).to.eql(1000);
pm.expect(jsonData.errorDescription).to.eql("messageAccountIsnotVerified");
});
Run Code Online (Sandbox Code Playgroud)
或者
pm.test("test", function () {
var jsonData = pm.response.json();
var message = pm.environment.get("messageAccountIsnotVerified");
pm.expect(jsonData.errorCode).to.eql(1000);
pm.expect(jsonData.errorDescription).to.eql(message);
});
Run Code Online (Sandbox Code Playgroud)
它失败并出现错误:
test | AssertionError: expected 'Account is not verified …Run Code Online (Sandbox Code Playgroud) postman ×2