Visual Studio TDD项目的代码覆盖率工具

7

我采用测试驱动开发方式编写代码。使用的工具包括Visual Studio 2010 express,Google Test,C++98和最新版本的boost。我编写自己的Mock,不使用Google Mock。

你能推荐哪些开源工具帮助我进行代码覆盖率分析?


1
注意:如果您正在使用VS10,则在幕后使用一些C++11功能,例如标准库中的移动语义,除非您定义了_HAS_CPP0X=0。 - Arne Mertz
@Arne Mertz 是的,我有 #define _HAS_CPP0X 0,谢谢! - Baz
2个回答

2

看看带有C++插件的Sonar。这个工具不仅可以帮助您查看代码覆盖率,还可进行其他分析,例如重复性、代码质量和设计质量等。

http://www.sonarsource.org/插件


2

我正在使用gcov。

我的设置相当复杂,因为我需要考虑描述它:
我使用了stl提供的MinGW发行版,可在nuwen.net上获取gcc(g ++)和gcov。这使得我的程序具有一定的可移植性。
我使用scons和批处理文件构建我的测试应用程序,并运行它以检查它是否通过。

然后,我将代码提交到版本控制中,我的机器上运行的Jenkins CI服务器会接收到它,并且仍然使用scons进行编译,但这次使用--coverage标志。它运行测试应用程序,这次输出*.gc??文件。然后,我只需运行一次gcov,但告诉它所有文件的位置,这将生成大量*.gcov文件。过去,我曾经使用过Python脚本gcovr.py,但现在我已经编写了自己的脚本来扫描所有*.gcov文件并打印所有未覆盖的行。

我不确定所有这些部分的开源状态,但我知道它们是免费的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接