diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-16 19:23:18 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-16 19:23:18 +0000 |
commit | 43a123c1ae6613b3efeed291fa552ecd909d3acf (patch) | |
tree | fd92518b7024bc74031f78a1cf9e454b65e73665 /src/cmd/covdata/doc.go | |
parent | Initial commit. (diff) | |
download | golang-1.20-43a123c1ae6613b3efeed291fa552ecd909d3acf.tar.xz golang-1.20-43a123c1ae6613b3efeed291fa552ecd909d3acf.zip |
Adding upstream version 1.20.14.upstream/1.20.14upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/cmd/covdata/doc.go')
-rw-r--r-- | src/cmd/covdata/doc.go | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/src/cmd/covdata/doc.go b/src/cmd/covdata/doc.go new file mode 100644 index 0000000..924a742 --- /dev/null +++ b/src/cmd/covdata/doc.go @@ -0,0 +1,84 @@ +// Copyright 2022 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +/* +// +// 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> +// $ +// +*/ + +package main |