是否可以编译带有特定标志的Go程序进行覆盖率分析?
用例:
应该类似于 Gcov 或 Python覆盖。
非常感谢!
答案 0 :(得分:6)
是的,Go在测试过程中加入了封面工具(1.2版)。仅go test
将编译您的程序并运行您可能拥有的任何自动化测试。添加-cover
标志将提供有关测试覆盖率的统计信息。
运行它:
go test -cover
您还可以输出覆盖率配置文件:
go test -coverprofile=coverage.out
然后用以下方式查看:
go tool cover -func=coverage.out
或
go tool cover -html=coverage.out
用于HTML格式的输出(带颜色编码)。
有关详细信息,请参阅http://blog.golang.org/cover,go tool cover -h
和go help testflag
。