根据文档-响应会根据响应的内容自动以JSON,XML或String对象形式提供。
对于我来说,我的回复内容类型为text / plain
My server response is
["a.b.c:must match \"(\\d{4}(0[1-9"]
这可以在我将字符串转换为响应然后进行验证(我已经转义了所有反斜杠)的情况下起作用
* string responseString = response
* match responseString contains '["a.b.c match \\"(\\\\d{4}(0[1-9"]'
这失败。当响应也可以作为字符串使用时,为什么会失败
* match response contains '["a.b.c match \\"(\\\\d{4}(0[1-9"]'
com.intuit.karate.exception.KarateException:路径:$ [*],实际:[“ abc匹配\”(\ d {4}(0 [1-9“]],预期值:'[” abc:必须匹配\“(\ d {4}(0 [1-9”]',原因:实际值不包含预期值
答案 0 :(得分:1)
请将以下内容粘贴到新的场景中,并查看它是否可以正常工作。它应该可以帮助您解决问题:
* string response = '["a.b.c:must match \"(\\d{4}(0[1-9"]'
* match response contains '["a.b.c:must match \"(\\d{4}(0[1-9"]'
* assert response.contains('["a.b.c:must match \"(\\d{4}(0[1-9"]')