在 Bazel 中,您可以使用以下命令多次重新运行测试:
bazel test --runs_per_test=<n> <target>
Run Code Online (Sandbox Code Playgroud)
这对于重现导致片状测试失败的条件很有用。
然而,这种方法的缺点是无论n结果如何,测试都会运行一次。
对于在非常罕见的情况下不稳定的测试,这意味着您必须设置n高,但这意味着您可能必须滚动大量文本才能找到失败的测试的输出。
Bazel 是否有内置方法来运行测试直到失败?现在我while在 Bash 中使用循环,这对于我的用例来说足够好,但不可移植:
while bazel test --test_output=errors -t- <target_name>; do :; done
Run Code Online (Sandbox Code Playgroud)
--notest_keep_going一旦测试失败,通过将导致 Bazel 退出。因此,您可以--notest_keep_going与高得离谱的--runs_per_test.
| 归档时间: |
|
| 查看次数: |
1857 次 |
| 最近记录: |