Регулярное выражение каратэ дает ошибку - причина: не строка - PullRequest
1 голос
/ 21 марта 2019

Я написал небольшой сценарий, в котором мне нужно проверить значение ключа json на любое целое число.Итак, это мой тестовый этап в карате DSL:

When method get
* print response
Then match response contains { numberOfElements: '#regex [0-9]+' }

При запуске я получаю сообщение об ошибке:

путь: $ .numberOfElements, фактический: 8, ожидаемый: '#regex[0-9] + ', причина: не строка в ✽. Тогда ответ о совпадении содержит {numberOfElements:' #regex [0-9] + '}

Есть идеи, что может быть не так?

1 Ответ

1 голос
/ 21 марта 2019

Для проверки значения JSON с типом integer оно должно быть '#number'

#numberOfElements = 8
Then match response contains { numberOfElements: '#number' }

Ваш подход будет работать только для проверки, содержит ли значение JSON с типом string все числа.

#numberOfElements = '8'
Then match response contains { numberOfElements: '#regex [0-9]+' }

см. нечеткое совпадение

...