我有以下项目结构,我想运行 go test exclude 选项来运行测试例如命令运行除包中的测试之外的所有测试cmd(我有超过 3 个包,下面的结构是一个简单的例子)myGithubProject/ |---- cmd |---- -command |---- -hello.go |---- -hello_test.go |---- internal |---- -fs.go |---- -fs.go |---- -fs_test.go |---- -log |---- -log.go |---- -log_test.go main.go
1 回答
烙印99
TA贡献1829条经验 获得超13个赞
如果您有这样的层次结构,您可以像这样指定要测试(并向下递归)的同级文件夹:
go test internal/...
如果这对您来说不可行(例如,您有很多 的兄弟姐妹,或者您有许多您确实想要测试的cmd
子文件夹),您可以使用构建约束来实现您想要的。cmd
例如,donttestme
向hello_test.go
文件(第一行)添加构建标记的排除项:
// +build !donttestme
然后当你在测试时指定这个标签时,排除这个构建标签的文件将不会被考虑(将被跳过):
go test -tags donttestme <somepackages>
- 1 回答
- 0 关注
- 249 浏览
添加回答
举报
0/150
提交
取消