Я попрошу, используя пример. Давайте предположим, что следующие файлы:
root
- yes.h
- not.h
- test.cpp
«test.cpp» включает в себя «yes.h»
когда я запускаю lcov, показывает процент, покрытый yes.h и test.cpp, но (и вот мой вопрос) я хочу нулевую запись покрытия для «not.h», таким образом, у меня действительно может быть ценный показатель покрытия. Есть ли способ добиться этого?
Вот мое использование lcov:
g++ --coverage test.cpp
lcov --directory . --zerocounters
lcov -c -i -d . -o app_base.info
./a.out
lcov -c -d . -o app_test.info
lcov -a app_base.info -a app_test.info -o app_total.info
geninfo app_total.info
Благодарю.
Возможно, вы захотите взглянуть на опции —remove и —extract для lcov (см. Справочную страницу).
В вашем случае вы можете изменить
lcov -a app_base.info -a app_test.info -o app_total.info
geninfo app_total.info
с
lcov -a app_base.info -a app_test.info -o app_tmp.info
lcov --remove app_tmp.info */not.h --output app_total.info
geninfo app_total.info
Других решений пока нет …