【问题标题】:Karate - How to import a json file like karate-config.js [duplicate]空手道 - 如何导入像 karate-config.js 这样的 json 文件 [重复]
【发布时间】:2017-11-06 17:57:59
【问题描述】:

我的 karate-config.js 中有这样的 unicode 数据:

function f() {
    return {
        status0persianMessage: "عملیات با موفقیت انجام شد",
   };
}

当我尝试使用 #(status0persianMessage) 时没问题。
我有另一个文件名 data.json 像这样:

    {
  "first_name": {
    "first": "احسان"
  }

    }

我这样导入这个文件:

  • def data = read('classpath:data.json')

但是当我尝试使用 #(data.first_name.first) 时,我的数据是:?????。
如何像 karate-config.js 一样导入我的 data.json?

【问题讨论】:

  • 如果彼得的建议解决了您面临的问题,请接受彼得的回复作为答案,这将对社区有所帮助。

标签: json unit-testing karate


【解决方案1】:

您需要让空手道(我假设它通过 JUnit 运行)将 JVM file.encoding 设置为 UTF-8 - 来解决这个问题。要在 Maven 中执行此操作,请参阅此答案:https://stackoverflow.com/a/46988963/143475

这是一个可以帮助您在 Gradle 中执行此操作的链接:https://discuss.gradle.org/t/no-possibility-to-set-file-encoding-for-junit-tests-in-gradle-2-13-and-odler/17223

如果需要,我建议您与 Java 开发人员合作。我不知道以下是否有效,但基于上面的链接:

tasks.withType(Test) {
   systemProperty "file.encoding", "UTF-8"
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多