本文轉(zhuǎn)載于搜狗測試
OpenCppCoverage是Windows下的C ++的一個開源代碼覆蓋工具陈莽。主要用途是進行單元測試的覆蓋面互例,但你也可以用它來了解一個程序用于調(diào)試目的執(zhí)行的行——行覆蓋哦夕玩!
特點:
Non intrusive:只需要通過OpenCppCoverage運行程序,不需要重新編譯應(yīng)用程序祖搓。
Visual Studio support: Support compiler with programdatabase file (.pdb).
Run as Visual Studio Plugin: See here for moreinformation.
Low overhead.
Line coverage.
Jenkins support: See here for more information.
Coverage aggregation: Run several code coverages andmerge them into a single report.
Child processes coverage.
HTML reporting:
關(guān)于代碼覆蓋率工具我們之前都是通過打樁來完成底桂,在代碼中插入相關(guān)的樁來統(tǒng)計覆蓋度。OpenCppCoverage使用起來非常簡單筋遭,它不需要在編譯時插樁打颤,只需要有pdb文件暴拄,運行時插樁,通過OpenCppCoverage啟動進程即可编饺。
使用方法如下:
覆蓋率詳細(xì)結(jié)果:
官網(wǎng)上提供了詳細(xì)的使用文檔和與jenkins的集成文檔乖篷,
使用文檔:https://opencppcoverage.codeplex.com/documentation
Jenkins集成:https://opencppcoverage.codeplex.com/wikipage?title=Jenkins
Jenkins集成
對比我們之前自己開發(fā)的覆蓋率工具(ImeCodeCoverage),感興趣的小伙伴可以回復(fù)“覆蓋率工具”搜索一下反肋。
優(yōu)點:
無需編譯匯編文件那伐,定位函數(shù)踏施。
無需插樁石蔗,程序的一致性。
支持多種覆蓋方式畅形。
缺點:
Release版本優(yōu)化的內(nèi)容無法定位养距。
多模塊依賴比較繁瑣。