【问题标题】:Executing Karate scenarios calling external JAR from VScode执行从 VScode 调用外部 JAR 的空手道场景
【发布时间】:2020-06-16 20:43:37
【问题描述】:

我使用空手道作为独立的 JAR,为了编写场景,我安装了带有“karate-runner”插件的 Visual Source Code 作为 IDE 支持。 我使用外部 jar 进行加密处理。 问题是,当我从 Visual Source Code 执行空手道场景(用于调试目的)时,我的外部 jar 没有被考虑在内,并且在执行期间,我在控制台中收到消息“java.lang.ClassNotFoundException: GenerateSign” . 当我直接在命令行中启动场景时我没有问题:

Karate.bat mytest.feature

karate.bat 的内容是:

java -cp karate.jar;Sign.jar;. com.intuit.karate.Main %*

那么,如何配置工具以便从 VScode 执行我的空手道场景,同时考虑到我的外部 jar? 非常感谢。

【问题讨论】:

    标签: visual-studio-code jar external karate


    【解决方案1】:

    我怀疑问题是您没有在您的 launch.json 调试配置中更新“karateCli”属性。您能否尝试更新它,包括您的附加 jar 文件,然后重试。

    编辑

    根据批处理文件中的命令行功能,您应该更新“Karate Runner”扩展设置,如下图所示。

    使用“运行空手道测试”从 Codelens 运行测试

    用于使用 VSCode 调试器运行测试

    【讨论】:

    • 感谢您的回答。对于与 VScode 的调试会话,我举个例子吗? : "karateCli": "java -jar karate.jar Sign.jar -d" 它不起作用...而且,如果我不启动调试会话,只需单击“运行空手道测试”即可启动空手道测试” *.feature 文件中的链接:如何考虑外部 jar?在终端中,我总是看到: java -cp karate.jar com.intuit.karate.Main 这不取决于我在 karate.bat 文件中写的内容。请帮忙!
    • 我会参考 github.com/intuit/karate 的空手道 jar 和调试文档。可能尝试设置 "karateCli": "java -cp karate.jar:Sign.jar -d"
    • 不调试时,您可以通过转到“文件”或“菜单”>“首选项”>“设置”>“扩展”>“空手道运动员”>“空手道罐:命令”来更新相同的命令行参数"
    • 谢谢,但是通过修改命令行 Args 参数,像这样:“java -cp ./karate.jar;./sign.jar;.com.intuit.karate.Main” 当我执行通过单击空手道场景,我收到以下错误:+ java -cp ./karate.jar;./sign.jar;。 com.intuit.karate.Main c:_Kar ... + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (com.intuit.karate.Main: String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException 我不知道为什么...你有什么想法吗?
    • 您可以尝试在 jar 文件路径之间使用冒号而不是分号。如果您仍然有问题,如果您可以在某处发布一个示例项目来演示可能有助于更快解决此问题的问题。
    【解决方案2】:

    也许您只是使用了错误的版本。目录你试试 0.9.5 吗?

    这里是说明:https://marketplace.visualstudio.com/items?itemName=kirkslota.karate-runner

    对于将来遇到此问题的人,您可以将其用作附加参考:https://github.com/intuit/karate/wiki/Karate-Robot-Windows-Install-Guide

    【讨论】:

    • 是的,我使用的是 0.9.5 版本。但是在您指出的说明页面中,我看不到我到底应该做什么。抱歉,我根本不知道 Java 环境!请你详细解释一下好吗?
    猜你喜欢
    • 2023-01-31
    • 1970-01-01
    • 2023-02-10
    • 1970-01-01
    • 1970-01-01
    • 2018-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多