Repolode
catchorg

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