Karate 如何在空手道API测试中使用正则表达式验证模板中的响应结构
我试图使用json模板验证响应结构和响应值。我可以使用正则表达式验证可能具有不同预定义值的键。但无法通过在模板中提供正则表达式来验证日期时间 例如: 待验证的API响应:Karate 如何在空手道API测试中使用正则表达式验证模板中的响应结构,karate,Karate,我试图使用json模板验证响应结构和响应值。我可以使用正则表达式验证可能具有不同预定义值的键。但无法通过在模板中提供正则表达式来验证日期时间 例如: 待验证的API响应: t1 = { "key1": "ABC", "DateTime" : "2018-01-30T14:00:00+00:00" } 验证模板: t2 = { "key1": "#regex(ABC|PQR|XYZ|AAA)$",, "DateTime" : "#regex \d{4}-(?:0[1-9]|1[0
t1 = {
"key1": "ABC",
"DateTime" : "2018-01-30T14:00:00+00:00"
}
验证模板:
t2 = {
"key1": "#regex(ABC|PQR|XYZ|AAA)$",,
"DateTime" : "#regex \d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2]\d|3[0-1])T(?:[0-1]\d|2[0-3]):[0-5]\d:[0-5]\d[+-]([01]\d|2[0-4])(:?[0-5]\d)?"
}
* match t1 == t2
请让我知道我做错了什么,以及如何通过正则表达式模板匹配实现日期时间验证
谢谢您必须转义
\
字符。阅读文档:
* def foo = '2018-01-30T14:00:00+00:00'
* match foo == '#regex \\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2]\\\d|3[0-1])T(?:[0-1]\\\d|2[0-3]):[0-5]\\\d:[0-5]\\\d[+-]([01]\\\d|2[0-4])(:?[0-5]\\\d)?'