Herramienta de análisis estático para PHP que detecta errores en el código sin ejecutarlo.
realpython/pytest-mypy
Un plugin de pytest que ejecuta el comprobador estático de tipos mypy en los archivos fuente durante las pruebas de pytest.
- Estrellas
- 257
- Forks
- 33
- Issues abiertos
- 8
- Último commit
- hace 15 días
¿Qué es?
pytest-mypy integra la comprobación de tipos de mypy en el flujo de trabajo de pytest. Al activarlo con la opción --mypy, ejecuta mypy en los archivos Python que se pasan a pytest e informa de los errores de tipos como resultados de pruebas, de modo que las comprobaciones de tipos se ejecutan junto con las pruebas existentes. Está basado en pytest-flake8, que hace lo mismo con flake8.
La configuración de mypy se puede proporcionar, como de costumbre, mediante un archivo mypy.ini. El plugin también se puede configurar desde un conftest.py, donde se pueden añadir opciones adicionales de mypy, como --check-untyped-defs, a la lista de argumentos. Si se ejecuta pytest con -m mypy, la sesión se limita únicamente a las comprobaciones de tipos y se omiten las demás pruebas.
El proyecto se instala desde PyPI con pip y se distribuye bajo la licencia MIT.
Funciones clave
- 01Ejecuta mypy en los archivos fuente durante las pruebas de pytest
- 02Se activa con una sola opción, --mypy
- 03Lee la configuración estándar de mypy.ini
- 04Acepta opciones adicionales de mypy desde conftest.py
- 05Permite limitar una ejecución únicamente a las comprobaciones de tipos con -m mypy
Casos de uso
- Detectar errores de tipos en el flujo de pruebas de CI de un proyecto Python
- Hacer comprobaciones de tipos junto con las pruebas unitarias, sin tener que invocar otra herramienta por separado
- Aplicar opciones más estrictas de mypy, como --check-untyped-defs, solo durante la ejecución de las pruebas
Inicio rápido
- 1
Instala el complemento desde PyPI con pip
pip install pytest-mypy - 2
Ejecuta pytest con la opción --mypy en tus archivos de prueba
py.test --mypy test_*.py
Antes de usarlo
- El README indica que esto todavía está en desarrollo.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es pytest-mypy?
- Un plugin de pytest que ejecuta el comprobador estático de tipos mypy en los archivos fuente durante las pruebas de pytest. pytest-mypy integra la comprobación de tipos de mypy en el flujo de trabajo de pytest. Al activarlo con la opción --mypy, ejecuta mypy en los archivos Python que se pasan a pytest e informa de los errores de tipos como resultados de pruebas, de modo que las comprobaciones de tipos se ejecutan junto con las pruebas existentes. Está basado en pytest-flake8, que hace lo mismo con flake8.
- ¿pytest-mypy es gratuito? ¿Qué licencia tiene?
- pytest-mypy es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿pytest-mypy sigue mantenido?
- Mantenimiento activo. El último commit de pytest-mypy fue el 22 oct 2026.
- ¿Para qué puedo usar pytest-mypy?
- Detectar errores de tipos en el flujo de pruebas de CI de un proyecto Python Hacer comprobaciones de tipos junto con las pruebas unitarias, sin tener que invocar otra herramienta por separado Aplicar opciones más estrictas de mypy, como --check-untyped-defs, solo durante la ejecución de las pruebas
- ¿Cómo se instala pytest-mypy?
- Instala el complemento desde PyPI con pip: pip install pytest-mypy Ejecuta pytest con la opción --mypy en tus archivos de prueba: py.test --mypy test_*.py
- ¿Dónde consigo pytest-mypy?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/realpython/pytest-mypy
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Verificador estático de tipos para Python basado en estándares, con herramienta de línea de comandos y extensión para Visual Studio Code, diseñado para grandes bases de código.
Comprobador de tipos en tiempo de ejecución, escrito en Python puro, que aplica las anotaciones de tipo de PEP en funciones, clases y variables con un costo mínimo.
Verificador de tipos en tiempo de ejecución para Python que valida anotaciones PEP 484 en funciones, objetos arbitrarios y variables locales.
Analizador estático para Ruby que infiere tipos a partir del código sin anotaciones y busca reportar solo errores concluyentes, como métodos no definidos y receptores nil.
Una biblioteca de Python que graba las interacciones HTTP durante las pruebas y las reproduce después para que se ejecuten sin conexión y de forma determinista.