2009-02-12 152 views
3

我正在寻找一种分析C#解决方案的增量代码覆盖率的工具(最好是免费的)。我的意思是我不想知道所有代码或甚至命名空间的总代码覆盖范围,但是只有新的代码行或自上次签入后更改的代码行。 (我们使用源代码控制颠覆。)增量.NET代码覆盖率工具?

我想叫这个工具,我们的自动生成过程的一部分,并报告时,有人在新的代码检查与小于X%的代码覆盖率。

有没有人知道一个工具来完成这个?

谢谢。

回答

3

NDepend拥有如下:

NDepend的从NCover™和Visual Studio Team System的™中收集代码覆盖率数据。从这个 数据,NDepend推断方法,类型,名称空间和程序集的一些指标: PercentageCoverage,NbLinesOfCodeCovered,NbLinesOfCodeNotCovered和BranchCoverage (仅来自NCover)。

这些指标可以与其他NDepend功能结合使用。例如,您可以从 知道自上次发布以来添加或重构了哪些代码,并且不完全覆盖测试的 。您可以编写一个CQL约束来连续检查一组 类是否被100%覆盖。你可以列出哪些复杂的方法需要更多的测试。

我似乎记得NDepend的能够与数据进行比较,从早期的版本,所以它看起来像NDepend的组合和NCover威力做的伎俩。虽然没有尝试过。 )

0

根据.Net的版本,您可以免费使用NCover。但是,如果你使用的是.net的新版本,它并不便宜。你可能仍然需要编写你自己的样式表来解析NCover的结果,以明确你所要求的。

除此之外,我还没有听到或看到其他工具来做到这一点,除非你想自己编写的。

NCover基本上使用.Net分析API,所以理论上你可以做同样的事情。

+0

Partcover(http://sourceforge.net/projects/partcover /)是免费的,适用于最新的运行时版本并输出与NCover相同的数据。 OP仍然需要挖掘这些数据以获得低覆盖率的“新代码”。 – 2009-02-13 03:42:41

0

我用PartCover分析我的单元测试,效果良好。对于您要查找的数据,您可以使用控制台工具并从报告xml中提取visitlen计数。