列出测试但不运行它们



如何在不运行测试的情况下列出可供go test使用的测试?我想知道存在哪些测试(包括子测试(,以便我可以手动选择其中的子集以使用稍后的命令运行。对于这样的事情,我希望像go test -lgo test -n这样的事情。

在 go1.9 中,go test 命令接受一个新的 -list 标志,该标志将正则表达式作为参数,并打印出与其匹配的任何测试、基准或示例的名称,而不运行它们。

测试标志文档可以在 https://tip.golang.org 直到正式的 go1.9 版本下找到。

没有

go子命令,但你可以用一点findgrep(GNU版本,用于-P标志(魔术来做到这一点:

find /path/to/your/project -not -path "./vendor" -type f -name "*_test.go" -exec cat {} ; | grep -oP '^func (w+)(w *testing.T) {$' | grep -oP ' w+' | grep -oP 'w+';

最新更新