PartCover:新的开源代码覆盖工具

去年九月,NCover的创始人Peter Waldschmidt将NCover发展为一个商业产品。NCover原本是一个免费工具,并逐渐得到普及,尤其是在开源项目中。Peter的公司Gnoso通过为开源项目提供免费的许可,继续对开源社区提供支持。这对于某些开源项目而言还远远不够。因此,PartCover得到了越来越多的关注。

与NCover非常相似,PartCover是针对.NET的一个开源代码覆盖工具。它包括了一个控制台应用程序,GUI覆盖浏览器,以及用在CC.NET中的xsl转换。

作为.NET的一个开源IDE,SharpDevelop在3.0版本的Beta 1版本中转为使用了PartCover。

之前,插件使用了NCover来计算代码覆盖率(这是通过编写单元测试可以获得的度量值)。然而,最近NCover已经转变为一个商业产品。由于我们只能包含/支持那些给所有人(用于商业开发或者开源以及出于爱好的开发)免费使用的工具,因此我们转为使用另一个工具——PartCover。

TreeSurgeon的项目带头人Bil Simers,通过社区搜寻NCover的替代品。

在很长的一段时间内,我都在使用NCover用于代码覆盖计算。它是免费的,能够获得精准的结果,以及它提供了对NCoverExplorer和CI的集成,使得它成为了一个优秀的工具。易于使用,易于安装,抵消了新工具的特有麻烦(安装,学习,配置等)。

自从NCover商业化后,旧版本不能很好地运行3.0/3.5的代码。我之所以在TreeSurgeon中放弃对NCover的支持,正是因为此。TS从来都是免费的,任何人都可以获得并运行它,而无需为生成代码所依赖的产品购买或获取许可。我看中了Clover.NET作为替代品(在上次我还看见它是免费的?),但即使是它的“学术”版也需要$600。

那么,如今还有什么针对.NET项目的覆盖工具?这些工具是唯一的选择吗?是否所有用于计算.NET 3.0项目代码覆盖率的开源/免费工具都已成为了明日黄花?在这个寒冷的早晨(今早,在我驱车行驶时,温度降到了零下38度,即华氏-36度),我使用Google快速搜索,却得不到任何结果。

InfoQ:你会像SharpDevelop 3.0那样转为使用PartCover吗?

Bil Simers:是的,在Tree Surgeon的下一次发布中,我们会放弃对NCover 1.5.8的支持。如果你构建的是2.0版本的tree,你可以选择使用NCover或者PartCover。如果你构建的是3.x版本的项目,你只能使用PartCover。

InfoQ:你使用过PartCover吗?你对此有何看法?

Bil Simers:我认为它还不能完全与NCover相匹敌,它没有PartCover.Explorer(迄今为止),因此,我希望NCover的某些扩展内容能够很快地移植到PartCover中。这个工具很容易上手,但缺乏文档的支持,这意味着我将花去大半个下午的时间去尝试各种不同的命令行选项以获得正确的结果。最后,我认为PartCover对于.NET项目和代码覆盖而言,是一个不错的工具,但它还很稚嫩,需要不断发展。

InfoQ:PartCover的覆盖浏览器(Coverage Browser)与NCover Explorer相类似吗?

Bil Simers:是的,但它更加简单。它实现了这一功能,但需要对UI和特性进行某些改善。

随着TreeSurgeon和SharpDevelop对PartCover的关注,在NCover转变为商业产品的时候,PartCover有机会填补NCover留下的空白。

查看英文原文: PartCover: New Open Source Code Coverage Tool

你可能感兴趣的:(PartCover:新的开源代码覆盖工具)