skillfed

gcovr

Generate C/C++ code coverage reports with gcov

gcovr v8.6 4.4M downloads/30d#2,316 on PyPI991
Permissive license BSD-3-Clause Active released

What it is and what it does

Gcovr is a command-line tool that wraps GCC's gcov utility to collect and report code coverage from C and C++ projects. It reads raw coverage data generated by instrumented executables and transforms it into human-readable summaries or structured reports in formats like HTML, JSON, CSV, and various XML dialects (Cobertura, Clover, JaCoCo, LCOV, SonarQube). The tool is inspired by Python's coverage.py and fills a similar role for compiled languages.

You use gcovr after compiling your code with GCC's --coverage flag and running your test suite. It can produce compact console summaries, detailed HTML pages with per-file annotations, or machine-readable reports for integration with CI systems and coverage dashboards. The package depends on colorlog for colored output, jinja2 for HTML templating, lxml for XML processing, pygments for syntax highlighting, and tomli for configuration parsing.

Use it for:

  • Generate coverage reports in CI/CD pipelines to track test quality across builds and commits.
  • Create HTML coverage dashboards showing which lines of C/C++ code are exercised by tests.
  • Export coverage data to Cobertura or SonarQube format for integration with quality gates.
  • Produce JSON or CSV summaries of coverage metrics for automated analysis or metrics collection.
  • Compare coverage across different test runs or branches using LCOV or Coveralls formats.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Gcovr processes GCC code coverage data and generates human-readable or machine-parseable coverage reports in multiple formats including HTML, JSON, CSV, XML (Cobertura, Clover, JaCoCo, LCOV, SonarQube), Markdown, and Coveralls.

Yes. Gcovr is a mature, actively maintained tool (production-stable, last commit 2026-08-12) with low install friction, no known vulnerabilities, and a permissive license. Install it if you need to measure or report code coverage for GCC-compiled C/C++ projects, especially in CI/CD contexts where structured output formats are required.

Install

gcovr on PyPI

pip

pip install gcovr

uv

uv add gcovr

poetry

poetry add gcovr

Installing gcovr

Before you install

Low install friction: pure Python wheel with five common dependencies (colorlog, jinja2, lxml, pygments, tomli). Active maintenance with last commit 2026-08-12 and 213 days since last release; stable production status.

License in practice

BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; suitable for most projects.

Quickstart

pip install gcovr

# After compiling C/C++ code with --coverage -g -O0 and running tests:
gcovr

# Generate detailed HTML report:
gcovr --html-details coverage.html

Requires GCC-compiled code instrumented with --coverage flag; gcov utility must be available on the system.

Verify before relying

  • Whether gcovr works with Clang or other compilers beyond GCC.
  • Performance characteristics when processing large codebases or many coverage files.
  • Integration requirements with CI/CD systems beyond the CLI interface.

Package facts

License BSD-3-Clause (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 5 — colorlog, jinja2, lxml, pygments, tomli
Maintenance actively maintained — 213 days since the last release
Last repo commit
First released
Downloads 4,376,275/month — #2,316 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: gcovr-8.6-py3-none-any.whl

Keywords: Cobertura, Jenkins, coverage, gcc, gcov, lcov

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseNatural Language :: EnglishOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Software DevelopmentTopic :: Software Development :: Quality AssuranceTopic :: Software Development :: TestingTopic :: Utilities

Tags

gcc code coverage reportsgcov coverage analysisc++ coverage reportingcobertura xml reportscoverage html generationcode coverage metricstest coverage analysis
code-coveragegcc-toolingci-cd

More Software Development packages