Coverage reporting tool for The Go Programming Language
go install github.com/gozelle/gocov/gocov@latest
There are currently four gocov commands: test
, convert
, report
and annotate
.
Running gocov test [args...]
will run go test [args...]
with
an implicit -coverprofile
added, and then output the result of
gocov convert
with the profile.
Running gocov convert <coverprofile>
will convert a coverage
profile generated by go tool cover
to gocov's JSON interchange
format. For example:
go test -coverprofile=c.out
gocov convert c.out | gocov annotate -
Running gocov report <coverage.json>
will generate a textual
report from the coverage data output by gocov convert
. It is
assumed that the source code has not changed in between.
Output from gocov test
is printed to stdout so users can
pipe the output to gocov report
to view a summary of the test
coverage, for example: -
gocov test | gocov report
Running gocov annotate <coverage.json> <package[.receiver].function>
will generate a source listing of the specified function, annotating
it with coverage information, such as which lines have been missed.
GoCovGUI: A simple GUI wrapper for the gocov coverage analysis tool.
gocov-html: A simple helper tool for generating HTML output from gocov.
gocov-xml: A simple helper tool for generating XML output in Cobertura format for CIs like Jenkins and others from gocov.