首页 >后端开发 >Golang >如何获得跨多个 Go 包的全面代码覆盖率?

如何获得跨多个 Go 包的全面代码覆盖率?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-21 06:06:18234浏览

How Can I Get Comprehensive Code Coverage Across Multiple Go Packages?

如何收集多个 Go 包的全面代码覆盖率

在 Go 中测试大型项目时,获得综合概述可能具有挑战性跨多个包的代码覆盖率。虽然“-cover”标志提供了各个包的覆盖率信息,但项目范围覆盖率的整体视图有助于评估整体代码质量。

最初,获取完整的覆盖率报告需要自定义解决方案,例如 bash 脚本由 gosweep 项目提供。然而,随着 Go 1.10 的引入,出现了一种更简化的方法。

Go 1.10 引入了测试覆盖率的重大增强,包括能够对“-coverpkg”标志中指定的依赖项启用覆盖。通过利用此标志,现在可以执行以下命令来捕获全面的代码覆盖率:

go test -v -coverpkg=./... -coverprofile=profile.cov ./...

此命令将生成名为“profile.cov”的覆盖率配置文件,可以使用以下命令进一步分析:

go tool cover -func profile.cov

这种改进的覆盖率功能消除了对复杂脚本的需求,并提供了一种简化的方法来评估 Go 项目中的整体代码覆盖率。

以上是如何获得跨多个 Go 包的全面代码覆盖率?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn