【发布时间】:2017-11-15 14:54:26
【问题描述】:
在我的功能中,我有:
* def bar = read('classpath:features/xxx/foo.json')
但是当我在 Jenkins 中运行测试时,出现错误:
java.lang.RuntimeException: javascript evaluation failed: read('classpath:features/xxx/foo.json') at com.intuit.karate.Script.evalInNashorn(Script.java:423) at com.intuit.karate.Script.evalInNashorn(Script.java:394) at com.intuit.karate.Script.eval(Script.java:316) at com.intuit.karate.Script.eval(Script.java:194) at com.intuit.karate.Script.assign(Script.java:656) at com.intuit.karate.Script.assign(Script.java:587) at com.intuit.karate.StepDefs.def(StepDefs.java:265) at ✽.* def u = read('classpath:features/xxx/foo.json')(features/XXX/calling.feature:7) Caused by: com.intuit.karate.exception.KarateFileNotFoundException: file not找到:features/xxx/foo.json,类路径:true 在 com.intuit.karate.FileUtils.readFileAsString(FileUtils.java:104) 在 com.intuit.karate.FileUtils.readFile(FileUtils.java:80) 在 jdk.nashorn.internal.scripts.Script$重新编译$8$15A$\^eval_.L:1(:3) 在 jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:639) 在 jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:494) 在 jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:393) 在 jdk.nashorn.api.scripting.ScriptObjectMirror.call(ScriptObjectMirror.java:117) 在 jdk.nashorn.internal.scripts.Script$19$\^eval_.:program(:1) 在 jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:637) 在 jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:494) 在 jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:393) 在 jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:449) 在 jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:406) 在 jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:402) 在 jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155) 在 javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264) 在 com.intuit.karate.Script.evalInNashorn(Script.java:419) 在 com.intuit.karate.Script.evalInNashorn(Script.java:394) 在 com.intuit.karate.Script.eval(Script.java:316) 在 com.intuit.karate.Script.eval(Script.java:194) 在 com.intuit.karate.Script.assign(Script.java:656) 在 com.intuit.karate.Script.assign(Script.java:587) 在 com.intuit.karate.StepDefs.def(StepDefs.java:265) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 cucumber.runtime.Utils$1.call(Utils.java:40) 在 cucumber.runtime.Timeout.timeout(Timeout.java:16) 在 cucumber.runtime.Utils.invoke(Utils.java:34) 在 cucumber.runtime.java.JavaStepDefinition.execute(JavaStepDefinition.java:38) 在 cucumber.runtime.StepDefinitionMatch.runStep(StepDefinitionMatch.java:37) 在 com.intuit.karate.cucumber.CucumberUtils.runStep(CucumberUtils.java:136) 在 com.intuit.karate.cucumber.KarateRuntime.runStep(KarateRuntime.java:78) 在 cucumber.runtime.model.StepContainer.runStep(StepContainer.java:44) 在 cucumber.runtime.model.StepContainer.runSteps(StepContainer.java:39) 在 cucumber.runtime.model.CucumberScenario.runBackground(CucumberScenario.java:59) 在 cucumber.runtime.model.CucumberScenario.run(CucumberScenario.java:42) 在 cucumber.runtime.model.CucumberScenarioOutline.run(CucumberScenarioOutline.java:46) 在 cucumber.runtime.model.CucumberFeature.run(CucumberFeature.java:165) 在 com.intuit.karate.cucumber.CucumberRunner.lambda$parallel$0(CucumberRunner.java:84) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 java.lang.Thread.run(Thread.java:748)
`
怎么了?
【问题讨论】: