Un framework de pruebas de JavaScript muy usado para Node.js y el navegador, con una estructura de pruebas al estilo describe/it y soporte para pruebas asíncronas.
catchorg/Catch2
Framework de pruebas unitarias para C++ basado en headers, con aserciones sencillas, macros de estilo BDD y microbenchmarking básico.
- Estrellas
- 21,534
- Forks
- 3,437
- Issues abiertos
- 454
- Último commit
- hace 17 días
¿Qué es?
Catch2 es un framework de pruebas unitarias para C++. Los nombres de las pruebas pueden ser cadenas de texto libres, las aserciones se escriben como expresiones booleanas normales de C++ y las secciones permiten compartir localmente el código de preparación y limpieza entre pruebas.
Además de las pruebas unitarias, Catch2 incluye macros sencillas de BDD y microbenchmarking básico. Los benchmarks se excluyen de las ejecuciones predeterminadas y deben seleccionarse explícitamente con la etiqueta [!benchmark].
La línea v3 de la rama devel convierte Catch2, que era una biblioteca de un solo header, en una biblioteca convencional con varios headers y una implementación compilada por separado. La rama v2.x sigue ofreciendo compatibilidad con C++11, y Catch1.x es compatible con C++03.
Funciones clave
- 01Los nombres de las pruebas pueden ser cadenas arbitrarias, no identificadores válidos.
- 02Las aserciones se escriben como expresiones booleanas normales de C++.
- 03Las secciones comparten localmente el código de preparación y limpieza dentro de un caso de prueba.
- 04Incluye macros de estilo BDD para pruebas basadas en el comportamiento.
- 05Ofrece microbenchmarking básico, que se ejecuta mediante la etiqueta [!benchmark].
- 06No tiene dependencias externas.
Casos de uso
- Escribir pruebas unitarias para una base de código C++ con una configuración mínima.
- Practicar el desarrollo guiado por pruebas (TDD) en proyectos C++.
- Añadir microbenchmarks rápidos junto con las pruebas existentes.
- Organizar especificaciones de estilo conductual mediante macros BDD.
Antes de usarlo
- El README indica que la documentación aún se está actualizando para reflejar los cambios de la v3, por lo que es posible que algunos documentos no estén al día con el código.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es Catch2?
- Framework de pruebas unitarias para C++ basado en headers, con aserciones sencillas, macros de estilo BDD y microbenchmarking básico. Catch2 es un framework de pruebas unitarias para C++. Los nombres de las pruebas pueden ser cadenas de texto libres, las aserciones se escriben como expresiones booleanas normales de C++ y las secciones permiten compartir localmente el código de preparación y limpieza entre pruebas.
- ¿Catch2 es gratuito? ¿Qué licencia tiene?
- Catch2 es open source bajo la licencia BSL-1.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿Catch2 sigue mantenido?
- Mantenimiento activo. El último commit de Catch2 fue el 8 oct 2026.
- ¿Para qué puedo usar Catch2?
- Escribir pruebas unitarias para una base de código C++ con una configuración mínima. Practicar el desarrollo guiado por pruebas (TDD) en proyectos C++. Añadir microbenchmarks rápidos junto con las pruebas existentes. Organizar especificaciones de estilo conductual mediante macros BDD.
- ¿Dónde consigo Catch2?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/catchorg/Catch2
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un framework de testing para Python que facilita escribir pruebas pequeñas y escalar a pruebas funcionales complejas para aplicaciones y bibliotecas.
Jest es un framework de testing para JavaScript con aserciones, mocking, pruebas de snapshots y un modo watch interactivo integrados.
Kit de herramientas de testing para Go con aserciones, mocks y una estructura de suites compatible con el ejecutor estándar go test.
AVA es un ejecutor de pruebas concurrente para Node.js, con una API concisa, errores detallados y aislamiento por archivo.
PHPUnit es un framework de pruebas unitarias para PHP, orientado a programadores y basado en la arquitectura xUnit.