有人向我指出了该
-coverpkg指令,它可以满足我的需要-测量特定程序包中的测试覆盖率,即使使用该程序包而不是该程序包一部分的测试也是如此。例如:
$ go test -cover -coverpkg mypackage ./src/api/...ok /api 0.190s coverage: 50.8% of statements in mypackageok /api/mypackage 0.022s coverage: 0.7% of statements in mypackage
相比
$ go test -cover ./src/api/...ok /api 0.191s coverage: 71.0% of statementsok /api/mypackage 0.023s coverage: 0.7% of statements
在上面的例子中,我有测试中
main_test.go,其是在
package main一个使用
packagemypackage。我对它的覆盖范围最感兴趣,
package mypackage因为它包含了项目中99%的业务逻辑。
我对Go很陌生,因此很可能这不是通过集成测试衡量测试覆盖率的最佳方法。



