希望有人能告诉我我在这里做错了什么。每次重试时,我都会在响应中看到 foo 的值。奇怪的是,过一段时间就会过去。如果我删除重试直到并在拨打电话后对其进行评估,则没有问题。
* def bar = "baz"
* retry until response[0].foo.bar == bar
response =
[
{
"foo": {
"bar": "baz"
}
}
]
[Thread-0] WARN com.intuit.karate - 重试条件评估失败:js 失败: 01:响应[0].foo.bar == bar org.graalvm.polyglot.PolyglotException:类型错误:无法从未定义的 .:program(Unnamed:1) 中读取属性“foo”
尝试:
* retry until response && response.length && response[0].foo.bar == bar
根据需要添加更多这样的“检查”,因为最初可能有一个空数组等。