如何在空手道框架的js函数外部声明的js函数内部使用变量

问题描述 投票:0回答:1

这是我想要实现的目标: 我在空手道代码中的 js 函数之外声明了一个变量。该变量是一个对象数组,并且已经由值组成。 我在 eval 标记内编写了一个 js 函数,并且在该函数内有一个使用该数组的 for 循环。

* def results  = response.results
* eval
"""
Var md;
for(var id in results){
md = results[id].data
console.log(md)
}
"""

但是在控制台中 [object, Object] 正在被打印。我假设 for.loop 无法理解我想要循环的数组名称。

enter code here

automation karate
1个回答
0
投票

最佳实践是从不在空手道中使用 JS for 循环。请参阅文档的此部分:https://github.com/karatelabs/karate#loops

我会这样做:

* def response = { results: [1, 2, 3] }
* response.results.forEach(x => karate.log(x))

如果需要,与熟悉 JS 的人一起工作。请假设空手道不支持您正在做的 JS 类型。这与测试 API 无关。

© www.soinside.com 2019 - 2024. All rights reserved.