Я использую каратэ для проверки xml ответов от двух веб-методов. У нас есть старый веб-метод, который напрямую обращается к источнику данных. Мы добавляем слой над этим источником данных с Webmethod и базой данных, чтобы вернуть те же данные. Ожидается, что старый веб-метод и новый веб-метод будут возвращать те же данные. Я застрял в том, что ответы отображаются в разных форматах, один - JSON, а другой - XML.
My feature file setup.
Feature: Campare
Background:
* configure ssl = true
* def ddaAccounts = read(<list of test accounts>)
* configure printEnabled = false
Scenario Outline: Compare responses
Given url '<Old webmethod>'
Given request read('<request body>')
When method post
Then status 200
* xml hogan = response
* xml hogan = $response /Envelope/Body/AcctTrnInqRs
Given url '<new webmethod>'
Given request read('<request body>')
When method post
Then status 200
* xml oracle = response
* xml oracle = $response /Envelope/Body/AcctTrnInqRs
* match oracle == hogan
Examples:
| ddaAccounts |
Одна вещь, которую мы заметили, это один ответ, который возвращается, поскольку JSON имеет несколько полей учетной записи, где версия XML имеет одно.
Может ли это быть причиной разница в форматировании? Можно ли исправить это поведение?
Буду признателен за любые мысли / помощь.
Спасибо, Джо