问题描述
我有一个go模块,我需要对其进行集成测试以验证是否涵盖了所有内容。
通过单元测试,我去做:
go test -cover
哪个很棒! (请参见here)
由于我需要运行集成测试(即Redis需要运行),因此我有一个工具,我从以下工具开始:
go run cmd/integration/test.go
,而-cover
在这种情况下不起作用。
解决方法
您正在寻找的是构建标签。
将以下内容放在包装线上方的redis集成测试的顶部:
// +build integration
运行:
go test -cover -tags=integration
运行具有代码覆盖率的集成测试。
进一步阅读:
https://mickey.dev/posts/go-build-tags-testing/