Karate 如果一个json包含另一个json与空手道匹配

Karate 如果一个json包含另一个json与空手道匹配,karate,Karate,我必须验证一个json是否最终包含另一个json,如以下测试: def subset={bar:{foo:'xxx'} def超集={bar:{foo:'xxx',baz:'yyy'} 匹配超集包含子集 如果失败,则正确,如下所示 path:$.bar,实际值:{foo=xxx,baz=yyy},预期值:{foo=xxx},原因:实际值比预期值多1个键:{baz=yyy} 谢谢给你: * def part = { foo: 'xxx' } * def superset = { bar: {

我必须验证一个json是否最终包含另一个json,如以下测试:

def subset={bar:{foo:'xxx'}
def超集={bar:{foo:'xxx',baz:'yyy'}
匹配超集包含子集
如果失败,则正确,如下所示

path:$.bar,实际值:{foo=xxx,baz=yyy},预期值:{foo=xxx},原因:实际值比预期值多1个键:{baz=yyy}

谢谢

给你:

* def part = { foo: 'xxx' } 
* def superset = { bar: { foo: 'xxx', baz: 'yyy' } } 
* match superset == { bar: '#(^part)' }
请阅读文档:

给您:

* def part = { foo: 'xxx' } 
* def superset = { bar: { foo: 'xxx', baz: 'yyy' } } 
* match superset == { bar: '#(^part)' }

请阅读文档:

谢谢@peter,但是有没有办法不重新编写外部json?我必须验证rest响应是否包含该请求,并且该请求具有不可预测的部分。无论如何,我在原始帖子中写的
匹配是正确的,但失败了吗?@LorenzoNardi抱歉,我不明白。您可以始终为“外部json”定义变量,并在所有功能中重复使用。如果需要,请将此答案标记为“已接受”-打开一个新问题,并请具体说明。好吧,我的方法是错误的:)但最后,我想指出,
cointains
也应用于嵌套的json部分和第一个匹配succeedThank@peter,但有没有办法不重新编写外部json?我必须验证rest响应是否包含该请求,并且该请求具有不可预测的部分。无论如何,我在原始帖子中写的
匹配是正确的,但失败了吗?@LorenzoNardi抱歉,我不明白。您可以始终为“外部json”定义变量,并在所有功能中重复使用。如果需要,请将此答案标记为“已接受”-打开一个新问题,请具体说明,并举例说明。好吧,我的方法是错误的:)但最后,我希望
cointains
也适用于嵌套的json部分和成功的第一个匹配