api - 使用 BDD karate 在数组案例中验证数组
问题描述
将 karate bdd 插件与 cucumber 一起用于自动化测试用例。在验证数组中包含数组列表的 api 结构时遇到问题。如何使用 bdd 空手道验证数组结构中的值集数组?
{
"reqParam": "5bacfbaaa222ed1500f5aa7a",
"selectionLimit": [],
"valuesets": [
[{
"test": "sample",
"testB": "sample"
},
{
"test": "sample",
"testB": "sample"
},
{
"test": "sample",
"testB": "sample"
}
],
[{
"test": "sample",
"testB": "sample"
},
{
"test": "sample",
"testB": "sample"
}
]
]
}
这是我为完成此任务而一直在编写的一段代码。
* def samplePacket = { test: '#string', testB: '#string'}
Scenario: Check the valid params
Given url API_URL
Given path 'getParam/apicall'
And params validParameter
When method get
Then status 200
And match header Content-Type == 'application/json; charset=utf-8'
#And print response.valuesets[0]
Then match each response.valuesets == #[] samplePacket
解决方案
你有多层嵌套数组。
* def valueset = { test: '#string', testB: '#string' }
* def setarray = '#[] valueset'
* match response.valuesets == '#[] setarray'
推荐阅读
- linux - 我们如何显示手册页中提到特定人员的每个命令的名称
- java - 如何在帮助 selenium 的 html 中定位 ::before::after
- python - 在python中的函数中修改基于全局变量值的条件
- c# - C# 通过 foreach 循环更新数据库。错误
- java - 使@Controller的Spring注册动态化,无需重启应用服务器
- xml - Facebook 提要生成
- javafx - 在 javafx 阶段中居中 jdialog
- debugging - 在 Unix 上使用 GDB 调试:暂停执行
- php - File_get_contents 不适用于插播 (ř,š)
- excel - 如果条件满足,我想保存我的文件。我写了下面的代码,但它不起作用