Help us shape the future of Go! Take the 2026 Go Developer Survey

covdata

command standard library
go1.27.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2026 License: BSD-3-Clause Imports: 27 Imported by: 0

Documentation

Overview

Covdata is a program for manipulating and generating reports from 2nd-generation coverage testing output files, those produced from running applications or integration tests. E.g.

$ mkdir ./profiledir
$ go build -cover -o myapp.exe .
$ GOCOVERDIR=./profiledir ./myapp.exe <arguments>
$ ls ./profiledir
covcounters.cce1b350af34b6d0fb59cc1725f0ee27.821598.1663006712821344241
covmeta.cce1b350af34b6d0fb59cc1725f0ee27
$

Run covdata via "go tool covdata <mode>", where 'mode' is a subcommand selecting a specific reporting, merging, or data manipulation operation. Descriptions on the various modes (run "go tool cover <mode> -help" for specifics on usage of a given mode):

1. Report percent of statements covered in each profiled package

$ go tool covdata percent -i=profiledir
cov-example/p	coverage: 41.1% of statements
main	coverage: 87.5% of statements
$

2. Report import paths of packages profiled

$ go tool covdata pkglist -i=profiledir
cov-example/p
main
$

3. Report percent statements covered by function:

$ go tool covdata func -i=profiledir
cov-example/p/p.go:12:		emptyFn			0.0%
cov-example/p/p.go:32:		Small			100.0%
cov-example/p/p.go:47:		Medium			90.9%
...
$

4. Convert coverage data to legacy textual format:

$ go tool covdata textfmt -i=profiledir -o=cov.txt
$ head cov.txt
mode: set
cov-example/p/p.go:12.22,13.2 0 0
cov-example/p/p.go:15.31,16.2 1 0
cov-example/p/p.go:16.3,18.3 0 0
cov-example/p/p.go:19.3,21.3 0 0
...
$ go tool cover -html=cov.txt
$

5. Merge profiles together:

$ go tool covdata merge -i=indir1,indir2 -o=outdir -modpaths=github.com/go-delve/delve
$

6. Subtract one profile from another

$ go tool covdata subtract -i=indir1,indir2 -o=outdir
$

7. Intersect profiles

$ go tool covdata intersect -i=indir1,indir2 -o=outdir
$

8. Dump a profile for debugging purposes.

$ go tool covdata debugdump -i=indir
<human readable output>
$

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL