首页 > 后端开发 > Golang > 如何准确衡量 Go 集成测试的覆盖率?

如何准确衡量 Go 集成测试的覆盖率?

Barbara Streisand
发布: 2024-11-08 20:40:01
原创
463 人浏览过

How Can I Accurately Measure Coverage in Go Integration Tests?

测量 Go 集成测试中的测试覆盖率

在 Go REST API 上进行集成测试时,使用 go test -cover 可能会产生误导0% 测试覆盖率。这是因为 go 工具 cover 无法识别驻留在服务包之外的测试。

然而,-coverpkg 指令提供了一种解决方案,通过测量特定包内的测试覆盖率,无论是否测试属于该包。这允许准确的服务包覆盖率报告,例如:

$ go test -cover -coverpkg mypackage ./src/api/...
ok      /api    0.190s  coverage: 50.8% of statements in mypackage
ok      /api/mypackage   0.022s  coverage: 0.7% of statements in mypackage
登录后复制

相反,使用 go test -cover 将报告:

$ go test -cover ./src/api/...
ok      /api    0.191s  coverage: 71.0% of statements
ok      /api/mypackage   0.023s  coverage: 0.7% of statements
登录后复制

这证明了 -coverpkg 的有效性将覆盖率测量隔离到所需的包,在本例中为 mypackage。尽管这可能不是集成测试覆盖率的最佳方法,但它提供了对特定模块的代码覆盖率的宝贵见解。

以上是如何准确衡量 Go 集成测试的覆盖率?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板