我希望在我的工作中引入一个单元测试框架。我们正在使用 Visual Studio 2005(尽管我们可能会在接下来的 6 个月内转向 2008)并且主要使用 C# 进行工作。如果框架具有某种 IDE 集成那就最好了,但我对没有集成但设置仍然相对简单的框架持开放态度。我会以某种方式抵制它,所以如果我能确保我所推动的不是一个令人头疼的事情,那将对我的情况有所帮助。

从我迄今为止所做的研究中,显而易见的选择是 nUnit,但在向我的团队推荐它之前,我想了解一下实际使用过它的人的印象。

有人用过 nUnit 吗?如果是这样,有什么我应该注意的陷阱或限制吗?还有其他好的选择吗?如果是这样,如果您使用过这两种 nUnit,我将非常感谢您了解它们的优点和缺点。

有帮助吗?

解决方案

我认为 NUnit 你最好的选择。和 TestDriven.NET, ,你会得到很好的整合 VS.NET. 。(如果您使用 Resharper,它还有一个单元测试运行程序)。 NUnit 它使用简单并遵循既定范例。您还会发现大量使用它的项目/教程/指南,它们总是有帮助的。

您的另一个主要选择可能是 MBUnit,它越来越将自己定位为 BDD 选择的框架(与 Gallio 结合使用) http://www.gallio.org).

其他提示

Scott Hanselman 有一个关于此的很好的播客,标题为:

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

:

汉塞尔分钟 #112

内置的单元测试 VS 2008 还可以,但是很难整合 CruiseControl.net, ,肯定比平常难很多 NUnit.

所以去吧 NUnit 如果您计划进行良好的自动化测试。

Visual Studio 2008 有一个内置的测试项目类型,其工作方式与 NUnit 类似,但显然与 NUnit 具有更紧密的集成 Visual Studio (可以在每个构建上运行,并在升级解决方案文件时以与转换结果页面类似的方式显示结果),但它显然不如 NUnit 成熟,因为它很新,而且我不确定它如何处理模拟。

但当你的团队搬到 VS2008

我们一直在使用 xUnit.net. 。它似乎结合了所有最好的 nUnit, mbUnitMSTest.

也试试 聚醚醚酮 工具IT Microsoft自己的工具很快就会集成到VST中并确实支持 NUnit , MbUnitxUnit.net

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

当我开始单元测试时,我从 NUnit 由于设置和使用很简单,目前我正在使用附带的内置测试运行器 Resharper, ,这样我就可以轻松地在代码和测试结果之间切换。顺便说一下 NUnit 检测您何时编译了代码,因此您不需要进行任何刷新 NUnit. Resharper 当您选择运行特定测试时,会自动进行构建。

VSTT 2010 如果您正在寻找功能测试自动化,这应该是一个不错的选择。网络服务测试, UI 测试、Biztalk 测试和数据驱动测试支持。请看 VSTT

mbUnit 值得一看,它有一系列功能可与 NUnit, ,它有自己的GUI,或者可以集成到 VS 如果你有 Resharper. 。我也想推荐 Rhino Mocks 如果你正在做任何事情 TDD.

我还想说 mbUnit,我喜欢通过在测试函数上方指定输入和结果来多次运行单个测试。对我的意思的可怕描述 这是一个链接,可以向您展示我的意思。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top