Я использую lcov и genhtml для генерации отчетов о покрытии кода.
Мои файлы модульного тестирования включают только файлы заголовков .h.
client_test.cpp
#include "gtest/gtest.h"
#include "../client.h"
...
lcov --capture --no-external --rc lcov_branch_coverage=1 --directory . --output-file unfiltered_coverage.info
Я заметил, что отчет о покрытии содержит информацию о покрытии только для тех файлов, которые были в разделе include моих модульных тестов. Таким образом, отчет о покрытии содержит только файл client.h, а не файл client.cpp.