A Go tool that recursively runs test coverage across multi-package projects and concatenates results into a single coverprofile.
Overalls is a Go command-line tool that automates test coverage collection for multi-package Go projects. It recursively runs coverage tests across all packages and concatenates the results into a single coverprofile file, solving the problem of manually gathering and merging coverage data in complex project structures.
Go developers and teams working on large, multi-package projects who need to integrate test coverage reporting into their CI/CD workflows using services like goveralls or codecov.io.
Developers choose Overalls because it eliminates the manual effort of running coverage tests across multiple packages and merging results, providing a streamlined, automated solution that integrates seamlessly with existing coverage reporting tools.
:jeans:Multi-Package go project coverprofile for tools like goveralls
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Recursively runs 'go test -coverprofile' across all packages, eliminating manual collection and merging. The README states it 'recursively traverses your projects directory structure' to generate individual profiles.
Outputs a consolidated file compatible with goveralls and codecov.io, simplifying CI/CD setup. Examples in the README show direct usage with both services.
Allows custom flags to be passed to 'go test' via the '--' separator, supporting features like race detection or verbose output. The README demonstrates this with '-race -v'.
Supports the '-coverpkg' flag for enabling coverage across packages, useful for integration tests. A note in the README explains how to add '-coverpkg=./...'.
Relies on third-party services like goveralls or codecov.io for final coverage reporting and visualization, adding complexity to the toolchain. The README requires separate steps after running overalls.
Acknowledges that coverage tools may calculate differently than 'go tool cover', leading to potential discrepancies. The README links to issues with goveralls and codecov not matching standard Go coverage.
Primarily designed for CLI use without native IDE or GUI support, making it less suitable for developers who prefer integrated coverage tools within their editors.