我试图理解go test
中的-coverprofile cover.out
选项,特别是文件的格式。
例如,覆盖server.go
,将生成cover.out
的输出:
mode: set
github.com/cnuss/api_server/server.go:47.2,48.16 2 0
github.com/cnuss/api_server/server.go:52.2,53.16 2 0
github.com/cnuss/api_server/server.go:57.2,58.16 2 0
github.com/cnuss/api_server/server.go:62.2,63.16 2 0
github.com/cnuss/api_server/server.go:67.2,68.16 2 0
github.com/cnuss/api_server/server.go:72.2,73.16 2 0
github.com/cnuss/api_server/server.go:77.2,78.16 2 0
1.每个不同的列表示什么?
1.输出的格式是否为“标准”格式,例如gcov、xunit等,并且是否可转换为其他格式?
3条答案
按热度按时间kqqjbcuj1#
这些字段包括:
来源
deyfvvtc2#
golang-nuts社区(https://groups.google.com/forum/#!forum/golang-nuts)提供了一些有用的工具,可以将Go语言的覆盖率转换成更有用的格式。
JUnit格式(用于汇总测试执行):
Cobertura格式(用于详细说明代码覆盖率):
这条线索把我引向了这个方向:https://groups.google.com/forum/#!topic/golang-nuts/iUc68Zrxk_c
flvlnr443#
您可以使用go
cover
工具来行程护套轮廓:打开显示带注解的源代码的Web浏览器:
写出HTML文件而不是启动Web浏览器:
将每个函数的覆盖率百分比显示到stdout: