Итерация по массиву Dynami c и повторное использование значений в следующем запросе - PullRequest
1 голос
/ 03 апреля 2020

Я хотел бы сделать следующее:

  1. Отправить запрос на сервер и получить информацию о животных, доступных в зоомагазине.

post / getAnimalStatus response:

    "animals": [
        {
            "animalId": "567839",
            "gender": "Female",
            "age": 2,
            "isEligibleAsPet": true,
            "animalStatus": "AVAILABLE"
        },
        {
            "animalId": "648562",
            "gender": "Male",
            "age": 3,
            "isEligibleAsPet": true,
            "animalStatus": "AVAILABLE"
        },
        {
            "animalId": "965895",
            "gender": "Female",
            "age": 5,
            "isEligibleAsPet": false,
            "animalStatus": "UNAVAILABLE"
        }
    ]
}

Я бы тогда хотел:

Поиск всех животных, которые UNAVAILABLE в ответе, и сохранение значения массива в переменной. Отправка запроса на сервер для обновления всех статусов недоступных животных для 'AVAILABLE' Этот запрос будет отформатирован, как показано ниже, где мы используем значение массива из ответа выше в animal объекте ниже .:

put / updateAnimals

    "animal": {
        "animalId": "965895",
        "gender": "Female",
        "age": 5,
        "isEligibleAsPet": false,
        "animalStatus": "UNAVAILABLE"
    },
    "updateStatus": "AVAILABLE"
}

1 Ответ

0 голосов
/ 03 апреля 2020

используйте для этого JsonPath (или karate.filter()): https://github.com/intuit/karate#jsonpath -фильтры

используйте второй файл объектов и call для повторения: https://github.com/intuit/karate#data -driven-features

Также посмотрите на этот ответ для идей: { ссылка }

Пожалуйста, задайте более конкретный c вопрос, чтобы получить более конкретный c ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...