我面临一个问题,如果我使用以下方法调用功能,则会引发KarateException
javascript evaluation failed: x.action(x), com.google.gson.JsonObject cannot be cast to com.google.gson.JsonArray
* def result = call read('abcCommon.feature') { action : "start", input : ["X","Y"]}
在abcCommon.feature中
Scenario:
* def x = Java.Type('com.x')
* def status = x.action('#(input)')
我的操作方法是将输入读取为字符串,然后将字符串解析为JsonArray并将字符串返回给功能文件
答案 0 :(得分:0)
这不是有效的嵌入式表达式:x.action('#(input)')
。请在此处阅读文档:https://github.com/intuit/karate#rules-for-embedded-expressions
实际上,您应该这样做:x.action(input)
如果input
已经是范围内的有效变量。
顺便说一下,您的示例非常不完整,我在做一些假设。