如何在空手道中从 Java API 检索值数组?

How to retrieve an array of values from Java API in Karate?

我正在读取来自 excel 文件的 WSDL 路径和 XML 请求。我需要在我的特征文件中使用这两个数据。已在 Java 端完成阅读操作,但我不知道如何将这些传递到空手道 - 功能文件中。

我知道像这样从 Java API 传递给空手道的单个值。

   * xmlstring xmlVar = response
   * def APIHelperClass = Java.type('com.org.utilities.APIHelperClass')
   * def result = APIHelperClass.getResponseFromFeatureFile(xmlVar,'getMembersDetailsResponse.xml')

建议我如何从 JavaAPI 接收多个值/数组到空手道中。

谢谢

请参考这个例子:cats-java.feature and the corresponding Java class: JavaDemo.java.

因此,如果您 return 数据作为 Java List 它将是一个 JSON 数组。 Map 变成了 JSON 对象。这是解释 in the documentation.

在您的情况下,如果您 return 一个带有 2 个键的 HashMap,例如wsdlPathxmlRequest 您应该可以轻松地在空手道中使用它。