Как получить значение от Json, используя Groovy скрипт - PullRequest
0 голосов
/ 15 октября 2018

Привет, я новичок в Groovy и API Automation.У меня есть следующий Json, и я хочу добавить утверждение для проверки cyclestartdate и cycleEnddate на основе порядкового номера.

{
   "status" : "success",
   "locale" : "",
   "data" : {
      "periods" : [
         {
            "payCycleId" : "custompayperiod",
            "sequence" : 1,
            "cycleStartDate" : "2018-10-01",
            "cycleEndDate" : "2018-10-08"
         },
         {
            "payCycleId" : "custompayperiod",
            "sequence" : 2,
            "cycleStartDate" : "2018-10-09",
            "cycleEndDate" : "2018-10-16"
         }
      ]
   }
}

Как проверить, является ли последовательность 1 cycleStartDate значением 2018-10-01

1 Ответ

0 голосов
/ 15 октября 2018

Groovy предоставляет класс JsonSlurper, который упрощает анализ документов JSON.Рассмотрим следующий пример, который читает документ JSON как String (он также поддерживает различные методы инициализации):

import groovy.json.JsonSlurper

def inputJson = '''{
   "status" : "success",
   "locale" : "",
   "data" : {
      "periods" : [
         {
            "payCycleId" : "custompayperiod",
            "sequence" : 1,
            "cycleStartDate" : "2018-10-01",
            "cycleEndDate" : "2018-10-08"
         },
         {
            "payCycleId" : "custompayperiod",
            "sequence" : 2,
            "cycleStartDate" : "2018-10-09",
            "cycleEndDate" : "2018-10-16"
         }
      ]
   }
}'''

def json = new JsonSlurper().parseText(inputJson)

assert json.data.periods.find { it.sequence == 1 }.cycleStartDate == '2018-10-01'

После загрузки документа JSON вы можете извлекать данные, используя вложенные поля.Например, json.data.periods дает вам доступ к массиву, хранящемуся в вашем документе JSON.Затем метод find { it.sequence == 1 } возвращает узел из этого массива, где поле sequence равно 1.И, наконец, вы можете извлечь cycleStartDate и сравнить его с ожидаемой датой.

Более полезные примеры можно найти в Официальной документации Groovy .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...