2012-09-24 7 views
2

예를 사용하여 질문합니다. 이제 다음 파일을 가정하자 :lcov, 테스트되지 않은 헤더에 대해 0 % 적용 범위보고

root 
    - yes.h 
    - not.h 
    - test.cpp 

"Test.cpp에가"

내가 lcov를 실행 yes.h과 Test.cpp에 덮여 비율을 보여 주지만, "yes.h"를 포함 (그리고 여기에 내 질문) "not.h"에 대한 제로 커버리지 엔트리를 원한다.이 방법으로 나는 정말로 귀중한 커버리지 메트릭을 가질 수있다. 이것을 달성 할 수있는 방법이 있습니까?

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 

감사 :

여기 내 lcov 사용합니다.

답변

2

lcov에 대한 --remove 및 --extract 옵션을 살펴볼 수 있습니다 (매뉴얼 페이지 참조). 귀하의 경우에는, 당신은 변경할 수 있습니다

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