Добавление утверждения для проверки ключа из структуры

Я использую бесплатную версию soapUI и хочу добавить два утверждения

  • Первое утверждение для проверки ключей всегда присутствует в ответном теле сообщения
  • Проверка правильности значения для каждой пары ключ-значение

Например:

{
      "data": "",
      "success": ""
      "statuscode": ""
}

Может ли кто-нибудь указать мне, как мы можем добиться этого с помощью бесплатной версии soapUI. Является ли Groovy сценариев единственный способ добиться этого?

1 ответ

Ты можешь использовать Script Assertion для шага запроса в тестовом примере, чтобы достичь утверждений, которые вы упомянули.

Например, если вы возьмете пример данных, которые вы упомянули:

Сценарий Утверждение:

//Below is the key value pair map that you are expecting from response
//So define according to the expaction. Now just showing with example
//values for demonstration
def expectedMap = [data :'', success :'', statuscode :'']

def response = """{
  "data": "",
  "success": ""
  "statuscode": ""
}"""

def json = new groovy.json.JsonSlurper().parseText(response)
//check if actual response's keys and values are matched with expected map
//Both of your questions are fulfilled by this
assert expectedMap == json, 'Both are not matching'

Вы можете быстро попробовать ту же самую демоверсию онлайн

Выход:

В случае, если вы хотите иметь дело с динамическим ответом (в отличие от указанного выше фиксированного ответа), вы можете использовать приведенный ниже сценарий вместо вышеуказанного.

def expectedMap = [data :'', success :'', statuscode :'']

assert context.response, 'Response received is either empty or null'

def json = new groovy.json.JsonSlurper().parseText(context.response)

assert expectedMap == json, 'Actual response is not matching with expected data'
Другие вопросы по тегам