Я пишу автоматизированные коды API-теста с помощью метода bdd от Karate.
Часть утверждения толкает меня сильно. Мой ответ как ниже, и когда я назвал этот путь $.data.subscribers[0].products
, это дает мне массив пустых-нулей, как я проверил на сайте http://jsonpath.herokuapp.com/. Тем не менее, когда я запускаю функцию каратэ из корнишонов, она дает мне нулевой ответ, но все равно дает мне сообщение об ошибке. Это говорит актуально:
null, ожидается: null ...
Я не вижу никакой ошибки, как я могу это исправить? Это ошибка или есть какой-либо метод, чтобы справиться с этим?
Мой ответ:
{
"meta": {
"return_code": 0,
"message": "success"
},
"data": {
"sbs": [
{
"sbs_id": 32432432,
"dt": "OTT",
"pt": []
},
{
"sbs_id": 455654445,
"dt": "IPTV",
"pt": []
}
]
}
}
JsonPath, который я написал:
$.data.sbs[0].pt[0]
Утверждение, которое дал каратэ:
com.intuit.karate.exception.KarateException: base-tvpp-cases.feature:316
- path: $[0], actual: null, expected: null, reason: actual json-path does
not exist
Gherkin-Karate - код, который я написал в файле функций:
Я пробовал оба ниже
And match response.data.subscribers[0].products[0] == null
And match response.data.subscribers[0].products[0] == '#null'