在这里,我想澄清有关为动态JSON索引大小创建动态示例表的信息
我的JSON看起来像
环境-开发-2台服务器
"response": {
"abc": [{
"status": "pass"
.
.
},
{
"status": "pass"
.
.
}
]
}
Env-Uat-3台服务器
{
"response": {
"abc": [{
"status": "pass"
},
{
"status": "pass"
},
{
"status": "pass"
}
]
}
}
我的方案大纲如下
Scenario Outline: validating .....
When def result = callonce read('featurefilename@tagname')
Then print result
And print <status>
And print ...
And match ....
Examples:
|result.response.abc|
上述错误:
1)*动态表达式评估失败:result.response.abc
2)com.intuit.karate.karateExpresion:---- JavaScript评估失败result.response.abc,ReferenceError:在第1行未定义“结果”
注意-如果将步骤“当def result = callonce read('featurefilename @ tagname')移至背景时,它可以正常工作,但是由于其他因素,我无法在功能文件中使用背景。
预先感谢
答案 0 :(得分:1)
您可以利用空手道中的Dynamic Scenario Outline功能来代替在表中提供索引。
在这种情况下,您可以将变量作为输入传递给Examples
。如果上面提供的JSON来自变量result
,则
Examples:
| result.response.abc |
有关更多信息,请参阅文档。