Visual Studio C#Express版本在编写C#时是一个足够的IDE - 而NUnit是编写单元测试的适当框架。但是,这种配对不足以建立这些测试的代码覆盖率。
我意识到专业版和旗舰版与MSTest集成并提供完全集成的代码覆盖......但这限制了对购买相关IDE的人的覆盖验证 - 这是不理想的。
我并不担心将覆盖率分析整合到IDE中......这是一种方法,但我对批处理生成的报告同样感到满意......这可以集成到持续集成中。 / p>
我担心覆盖率指标的质量 - 例如,我希望分支级别的覆盖率分析不仅仅是行级别。
我想象Visual Studio Professional / Ultimate对于Mono环境中的开发人员来说不是一个想法解决方案......任何人都可以告诉我在这样的环境中通常使用什么?
答案 0 :(得分:7)
NCrunch非常酷。它为您提供代码左侧的可视指示器,让您知道它是否已被覆盖,以及是否已通过测试。
答案 1 :(得分:5)
OpenCover和PartCover是目前的两个主要工具。
PartCover是最早的,不再在SourceForge上主动维护。此实用程序的支持已移至GitHub(PartCover on GitHub)
OpenCover更新,也在GitHub上(OpenCover on GitHub),它具有64位和32位支持,并克服了PartCover的一些限制(内存和结果交付)。
两者都受到TypeMock的支持(我认为很快就会添加OpenCover支持,请参阅Can Opencover be used with TypeMock Isolator?)
可以使用ReportGenerator()
提供PartCover和OpenCover的报告答案 2 :(得分:1)
或SharpDevelop? SharpDevelop是一个备用IDE,它具有比VS版本更快的功能。
答案 3 :(得分:0)
我很惊讶没有人提到这一点,但是visual studio Team Edition附带了一个代码覆盖工具。 (它是Team Tools套件的一部分)。此外,当您在VS Team Edition中运行单元测试时,它会执行代码覆盖率AUTO-MAGICALLY。 :)
因此,如果您已经拥有Team Edition,那么它在某种意义上是免费的,但当然Team Edition的成本要高一些。你去吧。