为了账号安全,请及时绑定邮箱和手机立即绑定

运行除一个包之外的测试

运行除一个包之外的测试

Go
守候你守候我 2023-05-15 10:28:28
我有以下项目结构,我想运行 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

例如,donttestmehello_test.go文件(第一行)添加构建标记的排除项:

// +build !donttestme

然后当你在测试时指定这个标签时,排除这个构建标签的文件将不会被考虑(将被跳过):

go test -tags donttestme <somepackages>


查看完整回答
反对 回复 2023-05-15
  • 1 回答
  • 0 关注
  • 249 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信