查询 Bazel 缓存?

Querying the Bazel cache?

我想 运行 使用 Bazel 进行端到端测试。

每个 Bazel e2e 测试规则都需要一组独特的外部服务。例如,一些e2e测试可能需要postgresql,其他可能需要kafka等

我不想在每次测试前都支持所有这些服务运行。相反,我想查询 Bazel 缓存。如果测试已经通过并且缓存的结果仍然有效,我将跳过外部服务设置。

我如何查询 Bazel 缓存以查看我的哪些测试已经通过并且不会重新运行?

如果您保留 Bazel 服务器 运行ning,并且不更改任何依赖项(测试文件、源文件、Bazel 目标配置),Bazel 会自动缓存通过的测试。

换句话说,如果我运行:

bazel test //foo:bar

第一次,bazel 构建并执行测试。如果我离开 Bazel 服务器并重新运行

bazel test //foo:bar

...bazel returns 相当快,并注意到您有缓存命中:

//foo:bar (cached) PASSED in 0.1s

如果我误解了您的问题,请告诉我。