如何在 Bazel 中为不同的测试重用 deps?

How to reuse deps for different tests in Bazel?

我正在使用 Bazel 编译 scala。

现在,我的 scala_test 看起来像

scala_test {
    name = "sample",
    srcs = [
            "a.scala",
            "b.scala",
            "c.scala",
            "d.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}

在这种情况下,Bazel 不支持这些 src 的并行化,因为它们被分组为一个 scala_test。为了启用自动并行测试,我想将 srcs 分成不同的 scala_test like

scala_test {
    name = "sample1",
    srcs = [
            "a.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}
scala_test {
    name = "sample2",
    srcs = [
            "b.scala",
    ],
    deps = [
            "//src//main/scala/.../dep1",
            "//src//main/scala/.../dep2",
            "//src//main/scala/.../dep3",
            "//src//main/scala/.../dep4",
    ]
}
...

问题是我猜 bazel 会尝试为每个 scala_test 编译 deps。有什么方法可以将依赖项分组并在不同的 scala_test 块中重用它们,例如 scala_library?

抱歉,我认为 Bazel 缓存了依赖项,因此我不必担心在 运行 所有测试时再次编译它们。