Skip to content

Measuring Code Coverage with coverage.py

What coverage tells you

Coverage measures which lines/branches ran during tests.

Coverage helps you find:

  • untested code paths
  • dead code

Coverage does not guarantee correctness.

Using pytest-cov

Common setup:

  • pytest-covpytest-cov uses coverage.pycoverage.py

Run:

pytest --cov=src --cov-report=term-missing
pytest --cov=src --cov-report=term-missing

HTML report:

pytest --cov=src --cov-report=html
pytest --cov=src --cov-report=html

Good practice

  • aim for meaningful coverage
  • focus on risk areas
  • don’t chase 100% blindly

If this helped you, consider buying me a coffee β˜•

Buy me a coffee

Was this page helpful?

Let us know how we did