我有用于测试的代理设置,例如
function() {
var config = { // base config JSON
sslConfig: true,
apiUrl: 'https://my-api.com',
api2Url: 'https://my-api2.com',
proxy:
{
uri: 'http://my-proxy.com:3128',
nonProxyHosts:
[
'my-api2.com',
]
}
};
karate.configure('connectTimeout', 10001);
karate.configure('readTimeout', 10000);
karate.configure('proxy', config.proxy);
return config;
}
它在0.9.2中正常工作,升级到0.9.3后,我得到下面的解析错误消息并在那里挂起进程
13:47:45.639 | [ForkJoinPool-1-worker-1] | ERROR
failed function body: function() {
var config = { // base config JSON
sslConfig: true,
apiUrl: 'https://my-api.com',
api2Url: 'https://my-api2.com',
proxy:
{
uri: 'http://my-proxy.com:3128',
nonProxyHosts:
[
'my-api2.com',
]
}
};
karate.configure('connectTimeout', 10001);
karate.configure('readTimeout', 10000);
karate.configure('proxy', config.proxy);
return config;
}
13:47:45.646 | [ForkJoinPool-1-worker-1] | ERROR
evaluation of 'karate-config.js' failed: javascript function call failed: net.minidev.json.JSONArray cannot be cast to jdk.nashorn.api.scripting.ScriptObjectMirror
我尝试删除密钥nonProxyHosts
,它再次起作用。谁能建议这个问题的解决方案?
答案 0 :(得分:1)
是的,这是0.9.3中引入的错误-我们在这里打开了一个票证,并且已将其修复(在develop
分支中)https://github.com/intuit/karate/issues/802
如果您可以build this from source并确认它适合您,我们可以加快发布补丁程序的版本。