Cómo verificar la cobertura de tests en tus proyectos Python
Como desarrolladores, solemos centrarnos mucho en escribir código nuevo, pero también es importante asegurarnos de que ese código funciona correctamente.
La cobertura de tests es una herramienta esencial para mantener la calidad, reducir errores y ganar confianza en cada entrega.
A continuación encontrarás una guía práctica para medir la cobertura de tus tests usando pytest y coverage.py.
PRERREQUISITOS
Asegúrate de tener instalados los paquetes necesarios:
python -m pip install pytest pytest-cov
EJECUTAR TESTS CON REPORTE DE COBERTURA
Para lanzar los tests y generar un informe detallado:
python -m pytest tests/ --cov=. --cov-report=term-missing --cov-report=html
Este comando muestra un resumen en la terminal y genera también un informe HTML.
VER EL INFORME HTML
Después de ejecutar los tests, abre el archivo:
htmlcov/index.html
En ese informe podrás revisar la cobertura archivo por archivo, línea por línea:
Verde: líneas cubiertas por tests
Rojo: líneas sin cobertura
Gris: líneas no ejecutables (comentarios, líneas en blanco, etc.)
CÓMO INTERPRETAR LOS RESULTADOS
Algunos conceptos importantes del reporte:
Overall Coverage %: porcentaje total de código cubierto
Stmts: total de sentencias ejecutables
Miss: sentencias que no se ejecutaron durante los tests
Missing: números de línea que necesitan cobertura
COMANDOS RÁPIDOS DE REFERENCIA
Resumen en terminal:
python -m pytest tests/ --cov=. --cov-report=term
Informe HTML completo:
python -m pytest tests/ --cov=. --cov-report=html
Cobertura de un módulo específico:
python -m pytest tests/ --cov=modules/linker