Можно ли получить покрытие кода тестами с использованием тестовой среды Google?
google-тест: покрытие кода
Ответы (3)
Да, я успешно использовал как бесплатные (gcov), так и коммерческие (CTC++) инструменты. Никаких специальных шагов не требуется, просто следуйте документации.
Более подробную информацию можно найти в этом блоге http://googletesting.blogspot.dk/2014/07/measuring-coverage-at-google.html
Да, вы можете объединить свое приложение на основе Gtest с поддержкой Gcov/lcov. обратитесь к документации lcov http://ltp.sourceforge.net/coverage/lcov.php
есть одна доступная утилита тестового проекта Linux, которая делает вашу работу очень простой и очень самоинтерпретируемой.
lcov
- графический интерфейс GCOV
Скачать из репозитория Ubuntu:
$ sudo apt-get install lcov
Используйте следующие команды в каталоге сборки
$ lcov --directory ./build/ --capture --output-file ./code_coverage.info -rc lcov_branch_coverage=1
Запустите приложение
Создать HTML-отчет
$ genhtml code_coverage.info --branch-coverage --output-directory ./code_coverage_report/
Это будет выглядеть примерно так: http://ltp.sourceforge.net/coverage/lcov/output/index.html
(работает только в Windows)
Кажется, этот вопрос все еще активен, так что вот дополнительный вариант. Я только что протестировал Google Tests на нашем решении для покрытия кода (да, я его автор), которое работает в Visual Studio. Проект можно найти по адресу: https://github.com/atlaste/CPPCoverage.
Инструкции: щелкните проект правой кнопкой мыши, запустите покрытие. :-)
Если вы предпочитаете вывод XML (для CI), вы можете вызвать исполняемый файл покрытия вручную.