Golang:如何在不重新编译的情况下重复运行“go test”?

有什么方法可以让我轻松地多次运行 Go 测试,并在第一次失败时停止?我当然可以做这样的事情:

for i in {1..1000}; do go test ./mypkg && done

但这会导致每次重新编译,这与测试本身相比非常慢。我想我可以通过巧妙地应用-exec 标志和来做到这一点xargs,但我不擅长单线。

如果它在一千次失败中有一两次失败,则并行运行它多次并输出一些看似健全的详细输出的奖励积分。


MM们
浏览 220回答 2
2回答

撒科打诨

您可以根据帮助将-c标志传递给go testwhich will:将测试二进制文件编译为 pkg.test 但不要运行它。(其中 pkg 是包导入路径的最后一个元素。)所以你至少可以避免每次都重新编译。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go