Un plugin de pytest que ejecuta pruebas en paralelo en varias CPU y añade un modo para repetir las que fallan.
pytest-dev/pytest-asyncio
Plugin de pytest que permite escribir funciones de prueba como corutinas y usar await directamente para probar código con asyncio.
- Estrellas
- 1,669
- Forks
- 217
- Issues abiertos
- 53
- Último commit
- hace 14 horas
¿Qué es?
pytest-asyncio es un plugin para pytest que añade compatibilidad con las pruebas de código basado en la biblioteca asyncio de Python. Permite declarar las funciones de prueba como corutinas, de modo que se puedan esperar las llamadas asíncronas directamente dentro de una prueba, en lugar de envolverlas en código manual para el bucle de eventos.
Las pruebas se marcan con el marcador asyncio y pytest las ejecuta como elementos de prueba normales. La documentación del proyecto explica las opciones de configuración y cómo gestionar los bucles de eventos y las fixtures asíncronas. Para instalarlo basta con un comando de pip, y pytest detecta el plugin automáticamente una vez instalado.
El plugin no admite clases de prueba que hereden de la biblioteca estándar unittest. En esos casos, el proyecto recomienda unittest.IsolatedAsyncioTestCase o frameworks compatibles con código asíncrono.
Funciones clave
- 01Ejecuta funciones de prueba que son corutinas y están marcadas con el marcador asyncio.
- 02Permite esperar código asíncrono directamente dentro del cuerpo de las pruebas.
- 03Funciona como un plugin estándar de pytest que se instala con pip.
- 04Documentación sobre la configuración y la gestión de bucles de eventos.
Casos de uso
- Probar handlers o clientes de servicios web asíncronos basados en asyncio.
- Escribir pruebas de integración que llamen a bibliotecas asíncronas de bases de datos o redes.
- Probar fixtures asíncronas compartidas en una suite de pruebas de pytest.
Inicio rápido
- 1
Instala pytest-asyncio con pip
pip install pytest-asyncio
Antes de usarlo
- No se admiten las clases de prueba que heredan de unittest; usa unittest.IsolatedAsyncioTestCase en su lugar.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es pytest-asyncio?
- Plugin de pytest que permite escribir funciones de prueba como corutinas y usar await directamente para probar código con asyncio. pytest-asyncio es un plugin para pytest que añade compatibilidad con las pruebas de código basado en la biblioteca asyncio de Python. Permite declarar las funciones de prueba como corutinas, de modo que se puedan esperar las llamadas asíncronas directamente dentro de una prueba, en lugar de envolverlas en código manual para el bucle de eventos.
- ¿pytest-asyncio es gratuito? ¿Qué licencia tiene?
- pytest-asyncio es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿pytest-asyncio sigue mantenido?
- Mantenimiento activo. El último commit de pytest-asyncio fue el 6 nov 2026.
- ¿Para qué puedo usar pytest-asyncio?
- Probar handlers o clientes de servicios web asíncronos basados en asyncio. Escribir pruebas de integración que llamen a bibliotecas asíncronas de bases de datos o redes. Probar fixtures asíncronas compartidas en una suite de pruebas de pytest.
- ¿Cómo se instala pytest-asyncio?
- Instala pytest-asyncio con pip: pip install pytest-asyncio
- ¿Dónde consigo pytest-asyncio?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pytest-dev/pytest-asyncio
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un framework BDD que ejecuta archivos de funcionalidades Gherkin como pruebas de pytest, sin necesidad de un ejecutor de pruebas independiente.
Paquete de Python que encuentra y ejecuta el código de ejemplo de los docstrings; reescribe el módulo integrado doctest con un parser basado en AST.
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.
Un plugin de pytest que vuelve a ejecutar solo las pruebas afectadas por los cambios recientes en el código, con un modo de vigilancia continua opcional.
Un plugin de pytest que mezcla el orden de las pruebas y restablece las semillas aleatorias para reproducir fallos causados por el orden o por datos aleatorios.