Cucumber 如何使用黄瓜与巴扎?

Cucumber 如何使用黄瓜与巴扎?,cucumber,bazel,cucumber-cpp,Cucumber,Bazel,Cucumber Cpp,我试图创建一个项目,其中包括。我想不出它的构建文件是什么样子的 由于现在包含了它自己的构建文件,所以它非常简单。类似的东西就好了 我的工作区文件如下所示 load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "googletest", sha256 = "927827c183d0173

我试图创建一个项目,其中包括。我想不出它的
构建
文件是什么样子的

由于现在包含了它自己的
构建
文件,所以它非常简单。类似的东西就好了

我的
工作区
文件如下所示

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "googletest",
    sha256 = "927827c183d01734cc5cfef85e0ff3f5a92ffe6188e0d18e909c5efebf28a0c7",
    strip_prefix = "googletest-release-1.8.1",
    url = "https://github.com/google/googletest/archive/release-1.8.1.zip",
)

http_archive(
    name = "cucumber-cpp",
    sha256 = "73fddda099e39cc51ebee99051047067f6dcd437fbde60601ac48cb82a903dac",
    url = "https://github.com/cucumber/cucumber-cpp/archive/v0.5.zip",
)
我的规范
构建
文件

cc_test(
    name = "app-spec",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@cucumber-cpp//:main", //do not know if this is correct
    ],
)

cc_test(
    name = "app-spec",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@cucumber-cpp//:main", //do not know if this is correct
    ],
)
cc_test(
    name = "app-test",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@googletest//:gtest_main",
    ],
)
测试
生成
文件

cc_test(
    name = "app-spec",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@cucumber-cpp//:main", //do not know if this is correct
    ],
)

cc_test(
    name = "app-spec",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@cucumber-cpp//:main", //do not know if this is correct
    ],
)
cc_test(
    name = "app-test",
    srcs = glob(["**/*.cpp"]),
    deps = [
        "//src:app-lib",
        "@googletest//:gtest_main",
    ],
)

但是很明显,Cumber cpp没有构建,所以我想知道它的Bazel构建文件是什么样子的?

我也想这样做,但在任何人尝试过的地方都找不到任何东西。最后,我为cucumber和gherkin特性规范编写了一个专用的bazel扩展。目前它只支持
(linux | osx)+cpp+cucumber
,但我可能会进一步增加对windows和其他语言的支持。要使用此选项,请将其添加到工作区文件中

load(“@bazel\u tools//tools/build\u defs/repo:git.bzl”,“git\u存储库”)
git_存储库(
name=“rules\u gherkin”,
commit=“ef361f40f9716ad8a3c6a8a21111bb80d4cbd927”,更新此项以匹配最新提交
远程=”https://github.com/silvergasp/rules_gherkin.git"
)
加载(“@rules\u gherkin/:gherkin\u deps.bzl”,“gherkin\u deps”)
小黄瓜
加载(“@rules\u gherkin/:gherkin\u workspace.bzl”,“gherkin\u workspace”)
小黄瓜工作区()
示例构建文件如下所示

load(“//小黄瓜:defs.bzl”、“小黄瓜库”、“小黄瓜测试”)
小黄瓜图书馆(
name=“功能规格”,
srcs=glob([“***.feature”]),
)
小黄瓜试验(
name=“计算测试”,
步骤=“:计算器\步骤”,
deps=[“:功能规格”],
)
加载(“//小黄瓜:defs.bzl”,“cc_小黄瓜步骤”)
cc_小黄瓜_步骤(
name=“calculator\u步骤”,
srcs=[
“CalculatorSteps.cpp”,
],
可见性=[“//可见性:公共”],
deps=[
“//examples/Calc/src:calculator”,
“@cucumber\u cpp//src:cucumber\u main”,
“@gtest”,
],
)
可以找到一个完整的例子