我正在尋找C++代碼覆蓋率工具,它可以很好地在mutli服務器安裝程序中以及在沒有許可問題(如果不是免費的)上在Windows和Linux上運行。C++代碼覆蓋率工具
我已經做了一些研究,並找到2個免費工具:Covtool和gcov。這些或其他建議有什麼不利之處?
我正在尋找C++代碼覆蓋率工具,它可以很好地在mutli服務器安裝程序中以及在沒有許可問題(如果不是免費的)上在Windows和Linux上運行。C++代碼覆蓋率工具
我已經做了一些研究,並找到2個免費工具:Covtool和gcov。這些或其他建議有什麼不利之處?
雖然我不記得我的研究爲代碼覆蓋工具的所有細節,我似乎記得的gcov和covtool如下:
我們需要爲Windows/Linux和GCC/MSVC和settl支持編輯BullseyeCoverage這是商業和非免費。我們估計,使用免費產品更改我們的構建系統會比花費BullseyeCoverage許可證花費更多。他們的支持非常好,反應迅速,我對該工具的質量非常滿意。
一些好處:
AQTime對於Delphi/C++ Builder用戶很流行,但和其他建議一樣,它不是免費的。
Thankyou。任何免費的C++代碼覆蓋工具推薦? – prattipam 2010-06-15 20:43:56
OOVAide程序是一個免費的開源工具,它將測量源文件 並生成代碼覆蓋率統計信息以及顯示哪些行從未運行過 。它是線程安全和高效的。
它是相當透明的,意味着它生成的代碼都是可見的 ,如果需要特殊需求,可以修改您的項目。
源代碼修改的基本思想是它在CLang正在處理的AST的每個語句分組中插入一個宏 。 這通常是在條件或大括號之後。該宏可以被修改爲 ,但默認情況下,它會在數組中以偏移量 增加一個值。我也修改了它在某些情況下寫入文件, ,這允許執行程序跟蹤。
一個問題可能是它的構建系統是有限的,並且必須能夠使用CLang構建的 。它可能不適用於某些類型的項目。但由於 只是通過插入宏修改源代碼,因此可以用 來修改源代碼,然後使用現有的構建系統以 構建修改後的源代碼。
有一個文檔描述它是如何工作的。 http://oovaide.sourceforge.net/articles/TestCoverage.html
使用Gcov工具和LCOV工具。 LCOV工具是gcov的圖形化前端。
[GCov/LCov文章](http://bobah.net/d4d/tools/code-coverage-with-gcov)。上次我檢查GCC儀器裝置並不是線程安全的,所以如果你打算在單元測試之外的任何東西上運行它,那麼值得一提的是特別值得一提的是。 – bobah 2015-05-15 05:02:19