Я использую groovy в SOAPUI и сейчас пытаюсь установить, дает ли ответ от 2 конечных точек одинаковые результаты.
Я конвертирую свой XML-ответ в массив для каждой конечной точки, а затем перебираю Array1, а затем Array2, чтобы подтвердить наличие каждого элемента в Array1.
Это очень уродливый код, и я смотрел на карты, но синтаксис меня смутил. Я не уверен, как бы я создал такую карту массива. Как вы создаете ключи в таком случае?
А пока, ради моего благополучия ... Есть более изящный способ добиться следующего:
def outerCount = 0
def innerCount = 0
for( i in arrayOfInvoicesSTAGE)
{
for( j in arrayOfInvoicesSTAGE2)
{
if (i == j)
{
log.info outerCount+" FOUND "+arrayOfInvoicesSTAGE[outerCount] + " in both responses"
log.info "STAGE: "+i+" STAGE2: "+j
}
}
outerCount++
}
Также! для бонуса пальцы вверх! Может кто-нибудь посоветовать мне, как я могу добавить разрыв во внутренний цикл, чтобы он выпрыгивал, как только совпадение было найдено? Я видел код JS, который позволяет это, но не может получить что-то похожее на работу в Groovy
Действительно, вышеприведенный код является самым пахнущим кодом ... но я должен как-то смазать соединения ... это было давно! :)
Как всегда, любые советы приветствуются.