gocovsh icon indicating copy to clipboard operation
gocovsh copied to clipboard

Go Coverage in your terminal: a tool for exploring Go Coverage reports from the command line πŸ’»

Gocovsh - Go Coverage in your terminal

gocovsh is a tool for exploring Go Coverage reports from the command line.

Don't skip the Giving back section! πŸ’°

Demo below 🎬 πŸ‘‡

There is a Russian word Ковш (pronounced like "Kovsh") which means a ladle or a dipper. "The Big Dipper" is also a part of the constellation Ursa Major, thus the friendly dipper-shaped Gopher mascot, created by Michael Zolotov.

Test Go Report Card codecov

Installation

Using Homebrew

brew install orlangure/tap/gocovsh

Pre-built binary

Grab your pre-built binary from the Releases page.

From source

# install latest, probably unreleased version
go install github.com/orlangure/gocovsh@latest

# or install a specific version
go install github.com/orlangure/[email protected]

Usage

  1. Generate Go coverage report at your project's root with

    go test -cover -coverprofile coverage.out
    

    For more information about generating Go coverage reports, see πŸ“ my blog post.

  2. Run gocovsh at the same folder with coverage.out report and go.mod file (go.mod is required).

    gocovsh
    gocovsh --profile profile.out  # for other coverage profile names
    git diff --name-only | gocovsh # only show changed files
    
  3. Use j/k/enter/esc keys to explore the report. See built-in help for more key-bindings.

Giving back

This is a free and open source project that hopefully helps its users, at least a little. Even though I don't need donations to support it, I understand that there are people that wish to give back anyway. If you are one of them, I encourage you to plant some trees with Tree Nation 🌲 🌳 🌴

If you want me to know about your contribution, make sure to use [email protected] as the recipient email.

Thank you!

Demo

asciicast