A Go recursive coverage testing tool.
roveralls runs coverage tests on a package and all its sub-packages. The coverage profile is output as a single file called ‘roveralls.coverprofile’ for use by tools such as goveralls.
This tool was inspired by github.com/go-playground/overalls written by Dean Karn, but I found it difficult to test and brittle so I decided to rewrite it from scratch. Thanks for the inspiration Dean.
At its simplest, to test the current package and sub-packages and create a
roveralls.coverprofile file in the directory that you run the command:
To see the help for the command:
$ roveralls -help roveralls runs coverage tests on a package and all its sub-packages. The coverage profile is output as a single file called 'roveralls.coverprofile' for use by tools such as goveralls. Usage of roveralls: -covermode count,set,atomic Mode to run when testing files: count,set,atomic (default "count") -help Display this help -ignore dir1,dir2,... Comma separated list of directory names to ignore: dir1,dir2,... (default ".git,vendor") -short Tell long-running tests to shorten their run time -v Verbose output
View Output in a Web Browser
To view the code coverage for you packge in a browser:
$ go tool cover -html=roveralls.coverprofile
Use with goveralls
The output of
roveralls is the same as the the standard
go test -coverprofile=profile.coverprofile but with multiple files tested in the output file. This can therefore be used with tools such as
If you wanted to call it from a
.travis.yml script you could use:
- $HOME/gopath/bin/roveralls - $HOME/gopath/bin/goveralls -coverprofile=roveralls.coverprofile -service=travis-ci
If you want to improve this program make a pull request to the repo on github. Please put any pull requests in a separate branch to ease integration and add a test to prove that it works. If you find a bug, please report it at the project’s issues tracker also on github.
Copyright (C) 2016, Lawrence Woodman [email protected]
This software is licensed under an MIT Licence. Please see the file, LICENCE.md, for details.