在使用空手道框架进行API测试中验证嵌套JSON响应时,我遇到了问题。
JSON响应:
Feed[
{ "item_type": "Cake" ,
"title": "Birthday Cake",
"Services":
[
{
"id": "1",
"name": {
"first_name": "Rahul",
"last_name": "Goyal"
}
},
{
"id": "2",
"name":{
"first_name": "Hitendra",
"last_name": "garg"
}
}
]
},
{
"item_type":"Cycle",
"title": "used by"
},
{
"item_type": "College"
"dept":
[
{"branch": "EC"},
{"branch": "CSE"},
{"branch": "CIVIL"}
]
},
]
}
现在,我需要根据商品类型验证响应。我们可以看到,嵌套的JSON对于不同的item_type是不同的。
我尝试了以下解决方案
现在,如果我只想验证蛋糕类型,那么我已经写了以下匹配项
但是这里我的测试用例失败了。因为它正在比较所有项目类型。
所以在这里我有两个问题
1。)我们如何比较特定的项目类型架构
2。)我们如何在一个匹配方程式中包含所有项目类型,因为任何项目类型都可以在JSON响应中出现,而我想验证所有
谢谢
答案 0 :(得分:2)
我只给你一个提示。其余内容,请阅读documentation:
* def item = { item_type: '#string', title: '##string', dept: '##[]', Services: '##[]' }
* match each response == item