Google-test: couverture de code

Est-il possible d'obtenir une couverture de code par des tests utilisant Google test framework?

22
demandé sur Josh Kelley 2010-03-02 00:54:02

3 réponses

Oui, j'ai utilisé avec succès des outils gratuits (gcov) et commerciaux (CTC++). Aucune étape particulière n'est nécessaire, il suffit de suivre la documentation.

Plus de détails peuvent être trouvés dans ce blog http://googletesting.blogspot.dk/2014/07/measuring-coverage-at-google.html

18
répondu chalup 2015-02-03 20:39:46

Oui, vous pouvez associer votre application basée sur Gtest avec le soutien de Gcov / lcov. référez-vous à la documentation de lcov http://ltp.sourceforge.net/coverage/lcov.php

Il y a un utilitaire de projet de test linux disponible qui fait votre travail très facile et est très Auto-interprétatif.

lcov - une interface graphique GCOV

Télécharger depuis Ubuntu repo:

$ sudo apt-get install lcov
  1. Utilisez les commandes suivantes dans votre répertoire de construction

    $ lcov --directory ./build/ --capture --output-file ./code_coverage.info -rc lcov_branch_coverage=1
    
  2. Exécutez le Application

  3. Générer un rapport HTML

    $ genhtml code_coverage.info --branch-coverage --output-directory ./code_coverage_report/
    

Cela ressemblera à quelque chose comme - http://ltp.sourceforge.net/coverage/lcov/output/index.html

8
répondu Jinay Patel 2018-01-19 12:19:29

(fonctionne uniquement sur Windows)

Il semble que cette question soit toujours active, alors voici une option supplémentaire. Je viens de tester Google Tests sur notre solution de couverture de code (Oui, je suis l'auteur), qui fonctionne sur Visual Studio. Le projet peut être consulté à l'adresse suivante: https://github.com/atlaste/CPPCoverage

Instructions: cliquez avec le bouton droit sur projet, exécutez la couverture. :-)

Si vous préférez une sortie XML (pour CI), vous pouvez appeler l'exécutable coverage manuellement.

4
répondu atlaste 2017-06-19 14:47:04