Как перебрать файл объектов на входе JSON Array с проверкой состояния на всех входах?
Мне нужно перебрать свой файл объектов с входными данными из массива JSON, но перед каждой итерацией необходимо проверять условие, и только если условие проходит, итерация должна выполняться.
В настоящее время, когда я использую приведенный ниже синтаксис,
* def response = call read('createKitten.feature') kittenJsonArray
файл объектов будет повторяться для всех блоков JSON в массиве.
Однако есть ли способ вызвать createKitten.feature
только когда kittenJsonArray[i].name="Pooh"
в каждой итерации?
1 ответ
Решение
Просто измените kittenJsonArray
(или создайте новый), чтобы он содержал только те значения, которые необходимо обработать.
Использовать karate.filter()
API. Например:
* def fun = function(x){ return x.name == 'Pooh' }
* def kittenJsonArray = karate.filter(kittenJsonArray, fun)