【发布时间】:2018-04-15 03:56:30
【问题描述】:
我目前正在运行 Postman, 我也做了以下测试:
pm.test("Addition", function () {
pm.expect(pm.response.text()).to.include("Sture");
});
pm.test("amount", function () {
pm.expect(pm.response.text()).to.include("60");
});
(见下面我的 json 文件)
[
{
"MyList": "BeforeCarl",
"MyListTotalAmount": "90,92",
"Mylist2":
[
{
"name": "Dennis",
"amount": "10,00"
},
{
"name": "Sture",
"amount": "60,00"
},
{
"name": "Anders",
"amount": "30,00"
}
]
},
{
"MyList": "",
"MyListTotalAmount": "40,00",
"Mylist2":
[
{
"name": "Nils",
"amount": "50,00",
"": ""
},
{
"name": "Helena",
"amount": "60,00"
},
{
"name": "Lena",
"amount": "60,00"
},
{
"name": "Stina",
"amount": "50,00"
}
]
},
{
"MyList": "Lars",
"MyListTotalAmount": "10,00",
"MyList2":
[
{
"name": "Sten",
"amount": "50,00"
},
{
"name": "Stig",
"amount": "30,00"
}
]
}
]
我现在的问题是我想获取:
{
"name": "Helena",
"amount": "60,00"
},
我的代码做错的是:
1。它创建前 2 个测试(没有必要)
2。每个获取的字符串都可以在 JSON 中的任何位置。
我希望代码仅检查该片段:
{
"name": "Helena",
"amount": "60,00"
}
有人可以帮我解决吗?
提前谢谢你。
【问题讨论】:
-
使用 json.parse(responseBody) 解析您的响应,检查您的元素,然后当您匹配您的第一个 pm.expect 时,测试您的 json 元素中的第二个是否正确。顺便说一句,我不熟悉 chai 表示法,但如果你将两个 pm.expect 组合在一个函数中,我想你只会有一个测试......
-
你能帮我举个例子吗?提前谢谢你