猿问

运行除一个包之外的测试

我有以下项目结构,我想运行 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


守候你守候我
浏览 250回答 1
1回答

烙印99

如果您有这样的层次结构,您可以像这样指定要测试(并向下递归)的同级文件夹:go test internal/...如果这对您来说不可行(例如,您有很多 的兄弟姐妹,或者您有许多您确实想要测试的cmd子文件夹),您可以使用构建约束来实现您想要的。cmd例如,donttestme向hello_test.go文件(第一行)添加构建标记的排除项:// +build !donttestme然后当你在测试时指定这个标签时,排除这个构建标签的文件将不会被考虑(将被跳过):go test -tags donttestme <somepackages>
随时随地看视频慕课网APP

相关分类

Go
我要回答