【问题标题】:Use karate-config.js with standalone jar?将 karate-config.js 与独立 jar 一起使用?
【发布时间】:2019-01-07 22:09:15
【问题描述】:

我有一个 karate-config.js 文件:

function init() {
  karate.log("Env set to ", karate.env);
  karate.log("baseURL ", karate.properties["baseURL"]);
  karate.log("OriginURl", karate.properties["OriginURL"]);

  return {
    foo: "bar"
  };
}

我正在使用独立的 karate.jar 运行:

amzuko@DESKTOP-V0PECAR:/mnt/c/Joincad/komodo$ java -jar  bin/karate.jar path/to/my/feature
16:42:53.943 [main] INFO  com.intuit.karate.netty.Main - Karate version: 0.9.0
16:42:54.054 [main] INFO  com.intuit.karate.Runner - Karate version: 0.9.0
16:42:54.849 [ForkJoinPool-1-worker-1] WARN  com.intuit.karate - not a js function or feature file: read('file:./karate-config.js') - [type: NULL, value: null]
...

无论我是否设置了 karate.config,我都会看到相同的“不是 js 函数或功能文件:read('file:./karate-config.js') - [type: NULL, value: null]”错误消息明确或不明确路径。如果我将 karate.config.path 值设置为不包含 karate-config.js 文件的目录,

我主要在 linux 的 windows 子系统上运行它。当我直接在 windows 环境中使用 git-bash 和 powershell 运行时,我得到相同的结果(模需要在路径中交换正斜杠)。

我的项目结构是,工作目录是'/':

/services/tests/*.feature  <<-- features here
/bin/karate.jar
/karate-config.js

我正在使用空手道来测试在 golang 中实现的 API。我试过 0.8.1 和 0.9.0。

关于我做错了什么有什么想法吗?

【问题讨论】:

  • 你能用你的项目结构更新你的问题吗?我尝试使用 karate-0.9.0 独立,尝试使用 WSL 执行它,它对我来说工作正常
  • 另请参阅此票务讨论,开发分支中有一些额外的修复。在我们发布 0.9.1 github.com/intuit/karate/issues/624 之前让它们进行测试会很棒
  • 谢谢@BabuSekaran,我已经用我的(非常简单的)项目结构更新了这个问题。
  • @yurbles 尚未发布,但应该很容易自己构建,请参考:github.com/intuit/karate/wiki/Developer-Guide
  • 感谢@PeterThomas,完全有效!

标签: karate


【解决方案1】:

这在某种程度上与 https://github.com/intuit/karate/issues/624 的修复有关,截至 2019 年 1 月 7 日,使用从空手道开发分支构建的 .jar 解决了我的问题。

【讨论】:

    猜你喜欢
    • 2019-04-02
    • 2020-02-12
    • 2018-12-19
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多