我有一个类似这样的项目:
app/
api/
foo.go
test_foo.go
src/
db/
bar.go
在foo.go
中,调用了bar.go
中的一个函数。然而,在运行覆盖率报告时,它显示bar.go
的0行被覆盖了。有没有办法让覆盖范围包括对其他包的函数调用?
在我的情况下,我不想为
db
和api
分别进行测试,因为通过db
的所有调用将始终通过api
进行,并且编写两个测试将是冗余的。我这样运行覆盖率:
go clean -testcache
go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out