SOAPUI - анализ JSON объектов ответа с картой с использованием Groovy сценариев - PullRequest
0 голосов
/ 14 февраля 2020

Я должен сравнить 2 ответа REST. Я использую Groovy скрипт, чтобы получить элемент массива. С помощью этого кода я могу получить элемент с помощью obj JSON .documents.documentNumber, но не могу получить его, используя (c .value)

Код:

def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
import groovy.json.JsonSlurper

/*RESPONSE DE JSON*/
def jsonResponse = testRunner.testCase.getTestStepByName("request").getPropertyValue("Response")
def responseJSON = new JsonSlurper().parseText(jsonResponse)

def objJSON = responseJSON.items

def campos = [
    //key : 'value'
        documents: 'documents.documentNumber'

    ]

    def iterJSON=0
    for (c in campos){
        log.info(c.value)
        log.info(objJSON.(c.value))
        log.info(objJSON.documents.documentNumber)
    }

Журнал:

Fri Feb 14 10:13:20 GFT 2020:INFO:documents.documentNumber
Fri Feb 14 10:13:20 GFT 2020:INFO:[null]
Fri Feb 14 10:13:20 GFT 2020:INFO:[009900000123]

REST-ответ:

     {
           "items": [   {
              "documents":       {
                 "documentNumber": "009900000123",
                 "posit": "000",
                 "position": "0002",
                 "subposition": "000"
              },
              "company": "AR",
...