无论返回结果中的所有数据均返回id,firstname,lastname等结果的数量如何,如何在邮递员中进行验证
这是响应的样子:
[
{
"id": 1,
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com"
},
{
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com",
"id": 4
},
{
"id": 5,
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com"
},
{
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com",
"id": 8
},
{
"id": 9,
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com"
},
{
"first_name": "Sebastian",
"last_name": "Eschweiler",
"email": "sebastian@codingthesmartway.com",
"id": 12
}
]
我想验证两件事:
1)响应返回id,first_name,last_name,email
2)所有first_name都等于“ Sebastian”,无论结果是100还是100
这是我尝试过的方法,它只能用于一种结果:
const jsonData = pm.response.json();
pm.test('Has data', function() {
pm.expect(jsonData).to.have.property('first_name');
pm.expect(jsonData).to.have.property('last_name');
pm.expect(jsonData).to.have.property('email');
pm.expect(jsonData).to.have.property('id');
});
答案 0 :(得分:1)
您可以尝试以下方法:
pm.test("Has data",() => {
_.each(pm.response.json(), (item) => {
pm.expect(item.first_name).to.eql("Sebastian")
pm.expect(item).to.have.property('first_name')
pm.expect(item).to.have.property('last_name')
pm.expect(item).to.have.property('email')
pm.expect(item).to.have.property('id')
})
})
这将基于您提供的数据集。