карате: обработка soap ответа от вызываемого файла функций - PullRequest
1 голос
/ 12 июля 2020

first.feature Учитывая ur ''

  • def payload = read ('')
  • request payload
  • soap action ''
  • value = / Envelope / Body / Response / Result / Num
  • print value # печатает значение правильно, как ожидалось

second.feature Фон: * def fetch = read ('first.feature') * def data = call fetch

Сценарий:

  • print data.response # печатает soap ответ в формате json.
  • def res = data.response
  • print res ["s: Envelope"] [""] ["s: Body"] [" Ответ "] [""] [" Результат "] [" _ "] [" a: num ']

first.feature работает должным образом (ответ находится в soap) Когда я пытаюсь вызвать эту функцию в другой функции, ответ имеет формат json.

Я хочу использовать значение из этого ответа, чтобы передать его другому запросу. Мне пришлось использовать res [" s: Envelope "] [" _ "] [" s: Body "] [] [] .. чтобы добраться до этого.

Есть ли способ легко получить значение из t его ответ, как мы делаем в first.feature? Пожалуйста, дайте мне знать, как этого добиться.

1 Ответ

0 голосов
/ 12 июля 2020

Сделайте это изменение:

* xml res = data.response

Мы будем улучшать это в следующей версии, было бы хорошо, если вы можете протестировать ветку develop и подтвердить: https://github.com/intuit/karate/wiki/Developer-Guide

...