Это очень плохая практика для тестов, потому что тесты должны быть детерминированными .
Тем не менее, если вы действительно настаиваете на этом, в следующей версии каратэ вы сможете сделатьmatch
через JS.Это доступно для вас, чтобы попробовать в 0.8.0.RC3
Вот пример:
* def foo = { hello: 'world' }
* def result = true ? karate.match(foo, { hello: '#string'}) : {}
* match result == { pass: true, message: null }
* eval if (result.pass) karate.log('*** passed')
Результат karate.match()
вернет JSON в форме { pass: '#boolean', message: '#string' }