google-test: покрытие кода - PullRequest
       26

google-test: покрытие кода

27 голосов
/ 02 марта 2010

Можно ли получить покрытие кода с помощью тестов с использованием Google Test Framework?

Ответы [ 3 ]

23 голосов
/ 02 марта 2010

Да, я успешно использовал как бесплатные (gcov), так и коммерческие (CTC ++) инструменты. Никаких специальных шагов не требуется, просто следуйте документации.

Более подробную информацию можно найти в этом блоге http://googletesting.blogspot.dk/2014/07/measuring-coverage-at-google.html

11 голосов
/ 02 мая 2016

Да, вы можете забить свое приложение на основе Gtest при поддержке Gcov / lcov см. документацию lcov http://ltp.sourceforge.net/coverage/lcov.php

есть одна утилита проекта тестирования Linux, которая делает вашу работу очень простой и очень понятной.

lcov - графический интерфейс GCOV

Загрузка из репозитория Ubuntu:

$ sudo apt-get install lcov
  1. Используйте следующие команды в вашем каталоге сборки

    $ lcov --directory ./build/ --capture --output-file ./code_coverage.info -rc lcov_branch_coverage=1
    
  2. Запустить приложение

  3. Создание отчета в формате HTML

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

Это будет выглядеть примерно так - http://ltp.sourceforge.net/coverage/lcov/output/index.html

7 голосов
/ 19 июня 2017

(работает только в Windows)

Кажется, этот вопрос все еще активен, так что здесь есть дополнительная опция. Я только что протестировал Google Tests на нашем решении для покрытия кода (да, я автор), которое работает в Visual Studio. Проект можно найти по адресу: https://github.com/atlaste/CPPCoverage

Инструкции: щелкните правой кнопкой мыши проект, запустите покрытие. : -)

Если вы предпочитаете вывод XML (для CI), вы можете вызвать исполняемый файл покрытия вручную.

...