C# .NET测试框架建议

C# .NET测试框架建议,c#,.net,visual-studio,unit-testing,nunit,C#,.net,Visual Studio,Unit Testing,Nunit,我希望在我的工作中引入一个单元测试框架。我们使用的是VisualStudio2005(虽然我们可能会在未来六个月内转移到2008年),主要在C#中工作。如果框架有某种IDE集成,那将是最好的,但我对那些没有集成但设置起来相对简单的框架持开放态度。我会以这样或那样的方式对它产生阻力,所以如果我能确保我所推动的不会让我感到痛苦,这将有助于我的案例 到目前为止,我所做的研究中最明显的选择是NUnit,但我想在向我的团队推荐它之前,先了解一下实际使用过它的人的印象 有人用过吗?如果有的话,我是否应该知道

我希望在我的工作中引入一个单元测试框架。我们使用的是VisualStudio2005(虽然我们可能会在未来六个月内转移到2008年),主要在C#中工作。如果框架有某种IDE集成,那将是最好的,但我对那些没有集成但设置起来相对简单的框架持开放态度。我会以这样或那样的方式对它产生阻力,所以如果我能确保我所推动的不会让我感到痛苦,这将有助于我的案例

到目前为止,我所做的研究中最明显的选择是NUnit,但我想在向我的团队推荐它之前,先了解一下实际使用过它的人的印象


有人用过吗?如果有的话,我是否应该知道有什么陷阱或限制?还有其他好的选择吗?如果是这样的话,如果你同时使用了NUnit和NUnit,我将非常感谢你能了解它们的优点和缺点。

斯科特·汉斯曼(Scott Hanselman)有一个关于这一点的播客,题为:

.NET单元测试框架的过去、现在和未来

:

我认为是你最好的选择。使用,您可以在VisualStudio中获得良好的集成。(如果您正在使用的话,ReSharper还有一个单元测试运行程序)。NUnit使用简单,遵循既定的范例。您还可以找到大量使用它的项目、教程和指南,这些都很有用


您的另一个主要选择可能是,它越来越多地将自身定位为首选框架(与)。Visual Studio 2008有一个内置的测试项目类型,其工作方式与NUnit类似,但显然与Visual Studio的集成要紧密得多(可以在每个版本上运行,并在升级解决方案文件时以类似于转换结果页面的方式显示结果),但它显然不如NUnit成熟,因为它非常新,我不确定它如何处理模拟


但是,当您的团队迁移到Visual Studio 2008时,它值得一看。

值得一看。它有一组与NUnit相当的功能。它有自己的GUI,或者可以集成到Visual Studio中(如果您有)。如果您正在做任何类型的工作,我也会推荐Rhino Mock。

我也会说。我喜欢能够运行single测试多次只需指定输入,结果就在测试函数的正上方。这是对我意思的可怕描述,因此。

当我开始单元测试时,我开始使用NUnit,因为它易于设置和使用。目前我正在使用随附的内置测试运行程序。这样,我可以轻松地在代码和测试之间切换t结果


顺便说一句,NUnit会在您编译代码时进行检测,因此您不需要在NUnit中进行任何刷新。当您选择运行特定测试时,ReSharper会自动进行生成。

Visual Studio 2008中的内置单元测试是可以的,但它很难集成,当然比普通NUnit要困难得多

因此,如果您计划进行良好的自动化测试,请使用NUnit。

我们一直在使用它。它似乎将NUnit的所有优点结合在一起。

还可以尝试该工具

这是微软自己的,很可能很快就会被整合到微软中。 它确实支持NUnit,而且


我还使用一个小型控制台应用程序来测试一个类或一个小型库。您可以从中复制粘贴代码。

VSTT 2010(Visual Studio Team System Test)如果您正在寻找功能测试自动化,这应该是一个不错的选择。Web服务测试、UI测试、测试和数据驱动测试支持。请看。

这是一个金钱播客。它突出了所有主要的单元测试框架。我个人开始使用xUnit是因为我在这个播客上听到的。我非常后悔浪费了时间在我切换到.2008.Facepalm之前,我还没有试过。如果你升级的话,你应该使用2010