3 回答
TA贡献1789条经验 获得超10个赞
有几个 go 工具可以将覆盖数据从go testJenkins 转换为 Cobertura:gocover-cobertura或gocov和gocov-xml。
您可以gocover-cobertura按如下方式使用:
$ go get github.com/t-yuki/gocover-cobertura
$ go test -coverprofile=cover.out example.com/demo/...
ok example.com/demo 0.008s coverage: 0.0% of statements
ok example.com/demo/cmd/demo 0.020s coverage: 23.4% of statements
$ gocover-cobertura < cover.out > coverage.xml
$ head coverage.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">
<coverage line-rate="0.35415787" branch-rate="0" version="" timestamp="1520609235359" lines-covered="839" lines-valid="2369" branches-covered="0" branches-valid="0" complexity="0">
<sources>
<source>/usr/local/go/src</source>
<source>/Users/wilfred/workspace/go-scratch/src</source>
</sources>
<packages>
<package name="example.com/demo/cmd/demo" line-rate="0.4848485" branch-rate="0" complexity="0">
<classes>
请注意,您需要 Go 1.10+ 才能在一次运行-coverprofile中针对多个包运行。
TA贡献2036条经验 获得超8个赞
- 3 回答
- 0 关注
- 435 浏览
添加回答
举报
