首页 >后端开发 >Golang >如何衡量 Go 单元测试的代码覆盖率?

如何衡量 Go 单元测试的代码覆盖率?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-14 19:35:02383浏览

How to Measure Code Coverage for Go Unit Tests?

测量 Go 中的测试覆盖率

问题:

如何测量代码覆盖率Go 单元测试?

答案:

在 Go 1.2 及更高版本中,可以使用测试覆盖率报告。要启用它:

  1. 仪器测试代码:运行 go test -coverprofile=; 自动重写和检测测试代码。然后显示测试覆盖率统计信息。
  2. 生成覆盖率配置文件(可选):使用 go test -coverprofile=; 创建覆盖率配置文件。
  3. 分析覆盖率配置文件(可选):运行 go tool cover 来分析配置文件。

其他功能:

  • HTML 输出: go tool cover -html=;在默认浏览器中打开 HTML 报告。
  • 非测试代码的覆盖率:从 Go 1.19 开始,代码覆盖率可以通过 go build -cover 扩展到应用程序。
  • 集成测试的覆盖范围:在 Go 1.20 及更高版本中,可以通过将检测的二进制文件输入到测试中来将覆盖范围扩展到集成测试。
  • 包级黑盒覆盖范围: 使用 go test -coverpkg=;在黑盒测试期间测量特定包的覆盖范围。

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

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