我使用LCOV作为图形覆盖率的图形化手段来告诉我已测试了多少代码,但是其中包括我不关心的代码文件夹,这使覆盖率比实际低。
有没有一种方法可以排除整个目录,使我可以忽略一堆我不在乎的cpp文件?我知道--remove
,但这似乎不适用于此目的。我想排除所有遵循此模式的文件夹:
Src / GeneralSubSystems / GA /(迭代器除外)
这是我要忽略的目录
**Src/GeneralSubSystems/GA/Iterators** I want to include this but exclude everything else
Src/GeneralSubSystems/GA/Converters
Src/GeneralSubSystems/GA/Utils
Src/GeneralSubSystems/GA/Models
Src/GeneralSubSystems/GA/Collapse
Src/GeneralSubSystems/GA/Interview
Src/GeneralSubSystems/GA/Misc1
Src/GeneralSubSystems/GA/Misc2
Src/GeneralSubSystems/GA/Misc3
Src/GeneralSubSystems/GA/Misc4
Src/GeneralSubSystems/GA/Misc5
这是我目前的用法:
lcov --gcov-tool /usr/bin/gcov --capture --no-checksum --directory /jenkins/workspace/TCONVENGINE-INSTRUMENTED-BUILD/TCONV/Main/targs/Src --directory /jenkins/workspace/TCONVENGINE-INSTRUMENTED-BUILD/TCONV/Main/targs/Component --output-file ${WORKSPACE}/tps_coverage.info
lcov --remove ${WORKSPACE}/tconv_coverage.info '*/ThrdPrty/*' '*/Src/Low/*' '*/Src/TCCP-C/*' '*/Src/Tool/*' '*/zinAttInterviewDisassembler.*' '/usr/*' -o ${WORKSPACE}/tconv_coverage.info
genhtml --prefix /jenkins/workspace/TCONVENGINE-INSTRUMENTED-BUILD/TCONV/Main --title "TCONV Engine Coverage Analysis" --output-directory ${WORKSPACE}/lcov --num-spaces 3 ${WORKSPACE}/tps_coverage.info
任何帮助或帮助将不胜感激,在此先感谢大家
最佳答案
在删除列表中的*之前添加两个反斜杠可能会有所帮助。
例如。代替
'Src/GeneralSubSystems/GA/Utils/*'
使用
'Src/GeneralSubSystems/GA/Utils/\\*'
关于html - LCOV将整个程序包从代码覆盖率分析中排除,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39858691/