gcovr

Gcovr provides a utility for managing the use of the GNU gcov utility and generating summarized code coverage results. This command is inspired by the Python coverage.py package, which provides a similar utility for Python.

The gcovr command can produce different kinds of coverage reports:

CLI Option

User Guide

Description

default, --txt

Text Output

compact human-readable summaries

--html

HTML Output

overview of all files

--html-details

HTML Output

annotated source files

--html-template-dir

HTML Output

use custom set of Jinja2 templates

--csv

CSV Output

CSV report summarizing the coverage of each file

--json

JSON Output

JSON report with source file structure and coverage

--json-summary

JSON Output

JSON summary coverage report

--clover

Clover XML Output

machine readable XML reports in Clover format

--cobertura

Cobertura XML Output

machine readable XML reports in Cobertura format

--coveralls

Coveralls JSON Output

machine readable JSON report in Coveralls format

--jacoco

JaCoCo XML Output

machine readable XML reports in JaCoCo format

--lcov

LCOV info Output

machine readable report in LCOV info format

--sonarqube

SonarQube XML Output

machine readable XML reports in SonarQube format

Thus, gcovr can be viewed as a command-line alternative to the lcov utility, which runs gcov and generates an HTML-formatted report. The development of gcovr was motivated by the need for text summaries and XML reports.

This documentation (https://gcovr.com/) describes gcovr 7.0+main.