Как зациклить функцию в почтальоне
Я пытался написать тест на наличие каждого из элементов в каждом наборе. пример: присутствует ли familyName в каждом наборе или firstName присутствует в каждом наборе и так далее.
Когда я попытался использовать функцию "to .have.property" внутри цикла (как показано ниже), я получил сообщение "не использовать функцию внутри цикла".
var jsonData = pm.response.json();
totalNumber = jsonData.length;
while (i<totalNumber){
i=0;
pm.test('familyName is present in the response' ,function() {
pm.expect(jsonData[i]).to.have.property('agentSSN');
i++;
}
});
**Sample response**
[
{
"familyName": "123",
"firstName": "tester2",
"middleName": "",
"lastName": "test ",
"ContactNumber1": "",
"ContactNumber2": ""
},
{
"familyName": "123",
"firstName": "tester1",
"middleName": "",
"lastName": "test2",
"ContactNumber1": "",
"ContactNumber2": ""
}
]
1 ответ
Решение
Вы можете просто попробовать это:
pm.test('familyName is present in the response', () => {
_.each(pm.response.json(), (item) => {
pm.expect(item).to.have.property('agentSSN');
})
})
Он будет перебирать ответ и проверять, если это property
находится в объекте.