定义变量设置数组的长度是故障,但断言和打印起作用


  • def count = * print response.teams[0].teamMembers.length在以下抛出错误

com.jayway.jsonpath.pathnotfoundexception:期望找到一个对象 在路径$ ['teams'] [0] ['teammembers']中使用属性['length'] 找到" net.minidev.json.jsonarray"。
这不是JSON对象 根据JSONPROVIDER: 'com.jayway.jsonpath.spi.json.jsonsmartjsonprovider'。

  • print response.teams[0].teamMembers.length
  • assert response.teams[0].teamMembers.length == 9
    工作正常。

这里的任何帮助都非常感谢。

是的,空手道将右侧的右侧视为JSON-PATH(对于90%的情况,这很好)。使用括号在需要时强制JavaScript评估。

尝试以下操作:

def count = (response.teams[0].teamMembers.length)

有关详细说明,请参阅文档中的本节:空手道表达式

最新更新