Как передать несколько параметров в пост-запросе в рамках каратэ? - PullRequest
0 голосов
/ 12 января 2019

У меня есть файл данных JSON, в котором есть такие данные, как

{
  "Status": "Pending",
  "role": "manager",
  "client": "android",
  "user": "test@abc.com",
  "eTyres":
  {
    "Wheels": {
      "title": "Alloy Wheel",
      "value": "Yes"
    }
 }
}

Во-первых, я хочу прочитать эти данные, а , когда Wheels.value == Да , затем я хочу использовать API, иначе - другой API. Кроме того, я хотел бы знать, как я могу передать несколько параметров в запросе или из файла.

Данные пост-запроса следующие:

title:Alloy_wheel__Info
part:acCooling
partTitle:AC Cooling
partValue:No

Над данными я прохожу через "данные формы" в почтальоне.

Заранее спасибо

1 Ответ

0 голосов
/ 12 января 2019

Ваш вопрос сложен для понимания, и я предполагаю, что вы хотите перебрать какой-то заданный массив JSON и выполнить некоторые действия. Похоже, вы не "тестируете" и не используете каратэ!

Чтобы зациклить массив JSON, используйте call. См. Документы: https://github.com/intuit/karate#data-driven-features

Чтобы выполнить условия, прочитайте эту часть документации: https://github.com/intuit/karate#conditional-logic

Чтобы сделать "данные формы", прочитайте это: https://github.com/intuit/karate#form-field

* def data = { "Status": "Pending", "role": "manager", "client": "android", "user": "test@abc.com", "eTyres": { "Wheels": { "title": "Alloy Wheel", "value": "Yes" } } }
* eval data.eTyres.Wheels.value == 'Yes' ? karate.call('api1.feature') : karate.call('api2.feature')

Как реализовать api1.feature и api2.feature - это домашнее задание для вас. Имейте в виду, что в обоих случаях вы по-прежнему будете иметь доступ к переменной data. И, пожалуйста, прочитайте документы и примеры!

...