【问题标题】:Bazel with Java CucumberBazel 配爪哇黄瓜
【发布时间】:2023-02-17 16:56:09
【问题描述】:

有人可以分享一些在 Bazel 中构建的 Java Cucumber 测试示例项目吗? 我有一组使用 Maven 构建的工作测试,但需要将它们传输到 Bazel,我无法真正理解从 .feature 文件执行场景所需的 BUILD 文件的结构。

非常感谢任何帮助!

在多次失败后,我能够构建 Bazel 项目,但由于步骤定义类未正确粘合以及无法提供我的 .feature 文件的路径,测试将失败。

【问题讨论】:

  • 你可以参考这个 github project 上面的用例。

标签: cucumber-java bazel-java


【解决方案1】:

将 Bazel 与 Java Cucumber 结合使用的基本步骤:

  1. 将 Cucumber Java 依赖项添加到您的项目中。您可以通过将以下内容添加到您的 BUILD 文件中来执行此操作:

    maven_jar( 名称=“黄瓜核心”, artifact = "io.cucumber:cucumber-core:5.5.0", )

  2. 将 JUnit 依赖项添加到您的项目。您可以通过将以下内容添加到您的 BUILD 文件中来执行此操作:

    maven_jar( 名称=“联合”, 神器=“junit:junit:4.13”, )

  3. 创建一个 Bazel 规则来运行 Cucumber 测试。您可以通过将以下内容添加到您的 BUILD 文件中来执行此操作:

    load("@io_bazel_rules_java//java:defs.bzl", "java_test")

    java_test(
        name = "cucumber_test",
        srcs = glob(["**/*Test.java"]),
        resources = glob(["**/*.feature"]),
        deps = [
            "//path/to/your/source:source",
            "@maven//:cucumber-core",
            "@maven//:junit",
        ],
        main_class = "cucumber.api.cli.Main",
        args = ["--plugin", "pretty"],
    )
    
    1. 通过运行以下命令使用 Bazel 运行测试:

    bazel 测试 //path/to/your/test:cucumber_test

    这将运行项目中的所有 Cucumber 测试并输出结果。您可以通过修改 Bazel 规则中的 args 字段来自定义 Cucumber 配置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 2019-12-28
    相关资源
    最近更新 更多