首页 > 解决方案 > 集成测试,通配符忽略标签

问题描述

我想将我的集成测试与单元测试分开。我已经读到我可以在测试文件中包含标签:

// +build integration

另一方面,我使用通配符从我的项目中选择所有包./...

不幸的是,我遇到了问题,因为通配符,标签被忽略了。

go test ./... -tags=integration

或者

go test -tags=integration ./...

您有任何解决方案或替代方案吗?

标签: testinggointegration-testingwildcard

解决方案


在您的集成测试中,您可以使用:

func Test_SomeIntegration(t *testing.T) {
    if testing.Short() {
      t.Skip("skipping test")
    }
    ...
}

然后将 -short 标志传递给 go test 命令以跳过集成测试:

go test -short ./...

推荐阅读