Answers:
这应该在当前目录及其所有子目录中运行所有测试:
$ go test ./...
这应该针对给定的特定目录运行所有测试:
$ go test ./tests/... ./unit-tests/... ./my-packages/...
这应该以前缀为的导入路径运行所有测试foo/
:
$ go test foo/...
这应该运行所有带有前缀的测试导入路径foo
:
$ go test foo...
这应该在$ GOPATH中运行所有测试:
$ go test ...
go: warning: "subdir/..." matched no packages
go test ./...
真是个好命令!感谢您的帮助:)
从Go 1.9开始,使用
go test ./...
在Go 1.6至1.8中,./...
也匹配了vendor
目录。要跳过供应商提供的软件包,请使用
go test $(go list ./... | grep -v /vendor/)
来源:https://github.com/golang/go/issues/11659,https://github.com/golang/go/issues/14417,https://github.com/go-lang-plugin-org/ go-lang-idea-plugin / issues / 2366,@ nickgrim的评论。
资料夹结构
ProjectName/folderName1/file_test.go
ProjectName/folderName2/file1_test.go
ProjectName/folderName3/file2_test.go
去测试命令命令
ProjectName$ go test -v ./...
ProjectName$ go test ./...
ProjectName$ go test -cover ./...
整个项目的覆盖率报告
ok ProjectName/folderName1 10%
ok ProjectName/folerName2 90%
ok ProjectName/folerName2 85%
...
最后一个示例中的go test \...