В настоящее время у меня есть сценарий утверждения, который соответствует значению от ответа к установленному значению. см. ниже:SoapUI Assertion для сопоставления значения поля в пределах 0,05 с обеих сторон
// get the xml response
def response = messageExchange.getResponseContent()
// parse it
def xml = new XmlSlurper().parseText(response)
// find your node by name
def node = xml.'**'.find { it.name() == 'total-premium' }
// assert
assert node.toString().matches("(0|27.11|0)\\d*"), 'Expected Result: 0 or 27.11 or 0 Actual Result: ' + node
То, что я хотел бы сделать, это совместить между значениями 0.05 ниже и выше. Поэтому для этого конкретного сценария мне нужно, чтобы утверждение было истинным, если значение total-premium
находится где угодно от 27.06 и 27.16.
В настоящее время код утверждения соответствует цифровому значению, которое находится в поле total-premium
, до трех значений в matches("(0|27.11|0)\\d*")
.
Однако вместо меня ввод 11 значений total-premium
может быть, я хочу линию assert node.toString().matches("(0|27.11|0)\\d*"), 'Expected Result: 0 or 27.11 or 0 Actual Result: ' + node
пройти, даже если значение в поле total-premium
составляет 0,05 плюс или минус значение, которое я вручную ввести в этот сценарий. который для этого примера равен 27.11
.
Для краткого обзора у меня есть ~ 1000 тестовых примеров, и я использую Excel для создания кода и утверждений для каждого тестового примера, который затем импортирую в SoapUI. Таким образом, я автоматически сопоставляю скрипт в зависимости от того, какое значение ввел алгоритм Excel.
Можете ли вы показать, что представляет собой вход и что происходит с вашим утверждением? На данный момент это не совсем понятно. – Rao