Я использую groovy для автоматизации некоторых тестов на SoapUI, и я хотел также автоматизировать утверждения таким образом, чтобы получить имя и значение поля из файла * .txt и проверьте, существует ли требуемое поле с требуемым значением в ответе SOapUI.SoapUi Assertions - использовать строку как json-путь с groovy
Пусть У меня есть следующие JSON ответ:
{
"path" : {
"field" : "My Wanted Value"
}
}
И из моего текстового файла я бы следующие две строки:
path="path.field"
value="My Wanted Value"
Я попытался следующие:
import groovy.json.JsonSlurper
def response = messageExchange.response.responseContent
def slurper = new JsonSlurper()
def json = slurper.parseText response
assert json.path==value;
Но, конечно, это не сработает.
Любая идея, как я могу это сделать, пожалуйста?
Спасибо
Это работает! Спасибо большое ! Но это дает мне следующую ошибку: «Нет такого свойства: поле для класса: java.lang.String» Любая идея, как противостоять этому? – user3089045
@ user3089045 проблема в том, что, может быть, на вашем пути ('path.field') есть корневой узел, который не относится к ответу json? Вы можете защитить его, проверяя, если 'json [it]' имеет значение null, прежде чем назначить его: 'path.split (" \\. "). Each { def newValue = json." $ {It} " if (newValue! = null) json = newValue } '. ':)' – albciff
Это просто совершенство, спасибо – user3089045