Framework de pruebas unitarias para C++ basado en headers, con aserciones sencillas, macros de estilo BDD y microbenchmarking básico.
google/googletest
GoogleTest es el framework de testing y mocking de C++ de Google, con pruebas al estilo xUnit, aserciones completas y GoogleMock.
- Estrellas
- 39,716
- Forks
- 10,938
- Issues abiertos
- 552
- Último commit
- hace 14 horas
¿Qué es?
GoogleTest es un framework de pruebas unitarias para C++ de Google, basado en la arquitectura xUnit. Permite escribir casos de prueba, agruparlos en suites y ejecutarlos con detección automática, sin tener que registrarlos manualmente. El repositorio también integra el antiguo proyecto independiente GoogleMock, que ofrece herramientas para crear objetos mock y aislar el código que se está probando.
El framework ofrece una amplia variedad de aserciones para comprobar igualdad, desigualdad, excepciones y más, además de permitir aserciones definidas por el usuario. Incluye death tests para verificar que el código termina de una forma determinada, gestión de fallos fatales y no fatales, y pruebas parametrizadas por valores y por tipos. Las ejecuciones pueden enfocarse en pruebas individuales, seguir un orden específico o realizarse en paralelo.
GoogleTest sigue la política Foundational C++ Support Policy de Google para compiladores y plataformas, y la rama 1.18.x requiere como mínimo C++17. Lo utilizan proyectos como Chromium, LLVM, Protocol Buffers y OpenCV, y varias herramientas de ejecución de terceros y adaptadores para IDE se basan en sus resultados.
Funciones clave
- 01Detección automática de pruebas, sin necesidad de registrarlas manualmente.
- 02Amplia biblioteca de aserciones que incluye comprobaciones de igualdad, excepciones y aserciones definidas por el usuario.
- 03Death tests que verifican cómo termina el código, útiles para probar rutas de gestión de errores.
- 04Pruebas parametrizadas por valores y por tipos.
- 05Gestión de fallos fatales y no fatales, con opciones para ejecutar pruebas individualmente, en orden o en paralelo.
- 06Incluye GoogleMock para crear objetos mock.
Casos de uso
- Escribir pruebas unitarias para una biblioteca o aplicación de C++.
- Aislar el código que se está probando simulando sus dependencias con GoogleMock.
- Probar código de gestión de errores con death tests.
- Ejecutar en paralelo grandes suites de pruebas de C++ en CI.
Antes de usarlo
- La rama 1.18.x requiere como mínimo C++17.
- Está prevista una dependencia de Abseil en el futuro.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es googletest?
- GoogleTest es el framework de testing y mocking de C++ de Google, con pruebas al estilo xUnit, aserciones completas y GoogleMock. GoogleTest es un framework de pruebas unitarias para C++ de Google, basado en la arquitectura xUnit. Permite escribir casos de prueba, agruparlos en suites y ejecutarlos con detección automática, sin tener que registrarlos manualmente. El repositorio también integra el antiguo proyecto independiente GoogleMock, que ofrece herramientas para crear objetos mock y aislar el código que se está probando.
- ¿googletest es gratuito? ¿Qué licencia tiene?
- googletest es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿googletest sigue mantenido?
- Mantenimiento activo. El último commit de googletest fue el 7 nov 2026.
- ¿Para qué puedo usar googletest?
- Escribir pruebas unitarias para una biblioteca o aplicación de C++. Aislar el código que se está probando simulando sus dependencias con GoogleMock. Probar código de gestión de errores con death tests. Ejecutar en paralelo grandes suites de pruebas de C++ en CI.
- ¿Dónde consigo googletest?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/google/googletest
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
PHPUnit es un framework de pruebas unitarias para PHP, orientado a programadores y basado en la arquitectura xUnit.
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.
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.