我想知道对于。net(或者具体来说是c#)代码覆盖率有哪些选择,尤其是在价格较低的部分?

我不是在寻求建议,而是基于事实的产品比较。我知道以下几点:

NCover Seems to be very popular and looks quite good Supports statement coverage and branch coverage $480 for "NCover 3 Complete" Older beta versions are available for free Visual Studio (2008 Pro) | (2005 Team System (Development, Test or Team Suite Editions)) Well, it's Microsoft so I'd expect it to work properly Fully integrated into Visual Studio At least $5,469 PartCover - no further development (moved to OpenCover) Open source Supports statement coverage OpenCover - successor to PartCover OpenSource Supports branch and statement coverage 32 and 64 bit support Silverlight support Background Tutorial on The Code Project by the primary developer No .NET Core support yet SD Test Coverage Works with 32 and 64 bits, full C# 4.0 Handles both small and very large code bases $250 for single user license JetBrains dotCover $100 for Personal License. Free for user groups, open source projects, students and teachers. Supports statement coverage Silverlight support NCrunch $159 for personal license $289 for commercial seat license * Free during beta, to become commercial, pricing unknown future unknown. Code coverage indicators in Visual Studio Continuous (near real time) testing Visual per-test code coverage Performance metrics, parallel multi-core test execution NDepend $410 for developer license NDepend can import coverage data from NCover, DotCover, Visual Studio 2017; 2015, 2013, 2012, 2010 and 2008 Code Coverage files. Dependency graph Dependency structure matrix Visualizing code metrics Validating code rules


当前回答

我刚刚测试了NCrunch,不得不说我印象非常深刻。它是一个持续的测试工具,可以几乎实时地为Visual Studio中的代码添加代码覆盖率。在我写这篇文章的时候,NCrunch是免费的。现在还不清楚它将来是免费的,还是要花钱的,或者是开源的。

其他回答

请参阅我公司的c#测试覆盖工具Semantic Designs:

它具有非常低的开销,可以处理庞大的文件系统,直观的GUI,如何覆盖特定文件,并在方法、类和包级别生成覆盖分解报告。

代码覆盖特性,以及可编程API,随Visual Studio 2010而来。遗憾的是,只有两个版本包含了完整的代码覆盖功能:高级版和终极版。然而,我相信API在任何版本中都是可用的,因此创建代码覆盖文件并为覆盖信息编写一个查看器是可能的。

我使用TestDriven.NET附带的NCover版本。它将允许您轻松地右键单击单元测试类库,并点击test With→Coverage,它将弹出报告。

NCover的替代品可以是PartCover,这是一个用于。net的开源代码覆盖工具,与NCover非常相似,它包括一个控制台应用程序,一个GUI覆盖浏览器,以及用于CruiseControl.NET的XSL转换。

这是一个非常有趣的产品。

OpenCover取代了PartCover。

NCover有免费的预发布(测试版)版本。它们在大多数情况下都工作得很好,特别是与NCoverExplorer结合使用时。