À propos du projet

GoogleTest est le framework de test C++ de Google, issu de la fusion des anciens projets distincts GoogleTest et GoogleMock. Il s'agit d'un framework de tests unitaires basé sur xUnit qui découvre et exécute automatiquement les tests, de sorte que les tests n'ont pas besoin d'être enregistrés manuellement. Les principales capacités décrites dans le README incluent un ensemble riche d'assertions (égalité, inégalité, exceptions, etc.), des assertions définies par l'utilisateur, des tests de mort qui vérifient comment le code se termine, et la prise en charge des échecs fatals et non fatals afin qu'une exécution de test puisse continuer après un échec. Il prend également en charge les tests paramétrés par valeur qui s'exécutent de manière répétée avec différentes entrées et les tests paramétrés par type qui s'exécutent avec différents types de données. Il existe plusieurs options pour exécuter les tests, notamment l'exécution de tests individuels, l'exécution de tests dans un ordre spécifique et l'exécution de tests en parallèle. La documentation est hébergée sur GitHub Pages, avec le GoogleTest Primer recommandé comme point de départ. La version 1.18.0 est disponible, et la branche 1.18.x nécessite au moins C++17. Le projet suit la politique de support C++ fondamental de Google pour les compilateurs, plateformes et outils de construction pris en charge. Le README note que Google utilise des systèmes internes pour l'intégration continue et qu'une dépendance à Abseil est prévue. Parmi les utilisateurs notables cités dans le README figurent les projets Chromium, le compilateur LLVM, Protocol Buffers et la bibliothèque de vision par ordinateur OpenCV. Les projets open source associés incluent GTest Runner (un exécuteur de tests et une interface graphique Qt5), GoogleTest UI (un exécuteur de tests en C#), GTest TAP Listener (sortie du protocole TAP), gtest-parallel (exécution parallèle des tests) et des extensions VS Code telles que GoogleTest Adapter et C++ TestMate. Cornichon est mentionné comme un analyseur de DSL Gherkin qui génère du code stub GoogleTest. Les détails de contribution se trouvent dans CONTRIBUTING.md.