【问题标题】:.NET testing framework advice.NET 测试框架建议
【发布时间】:2010-09-05 06:27:04
【问题描述】:

我希望在我的工作中引入一个单元测试框架。我们正在使用 Visual Studio 2005(尽管我们可能会在接下来的六个月内迁移到 2008)并且主要使用 C# 工作。如果框架具有某种最好的 IDE 集成,但我对没有集成但设置起来仍然相对简单的框架持开放态度。我会以某种方式抵抗它,所以如果我能确保我所推动的不是颈部疼痛,那将有助于我的情况。

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

有人用过NUnit吗?如果是这样,是否有任何我应该注意的陷阱或限制?还有其他好的选择吗?如果是这样,如果您同时使用过 NUnit,我将非常感谢您了解它们的优缺点。

【问题讨论】:

  • 2008.掌心。如果您升级,您应该使用 2010

标签: c# .net visual-studio unit-testing nunit


【解决方案1】:

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

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

Hanselminutes #112

【讨论】:

  • 那是一个金钱播客。它突出了所有主要的单元测试框架。我个人开始使用 xUnit 是因为我在这个播客中听到的。
【解决方案2】:

我认为NUnit 你最好的选择。使用 TestDriven.NET,您可以在 Visual Studio 中实现出色的集成。 (如果您正在使用 ReSharper,它还有一个单元测试运行器)。 NUnit 易于使用并遵循既定的范例。您还可以找到大量使用它的项目、教程和指南,这些总是有帮助的。

您的另一个主要选择可能是MbUnit,它越来越将自己定位为首选的BDD 框架(与Gallio 结合使用)。

【讨论】:

    【解决方案3】:

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

    但是,当您的团队迁移到 Visual Studio 2008 时,值得研究一下。

    【讨论】:

      【解决方案4】:

      MbUnit 值得一看。它有一组可与 NUnit 相媲美的特性。它有自己的 GUI,如果你有 ReSharper,它也可以集成到 Visual Studio 中。如果您正在做任何形式的TDD,我也会推荐Rhino Mocks

      【讨论】:

        【解决方案5】:

        我也会说MbUnit。我喜欢通过指定输入来多次运行单个测试,结果正好在测试函数的正上方。这是对我的意思的可怕描述,所以here is a link that shows you what I mean

        【讨论】:

          【解决方案6】:

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

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

          【讨论】:

            【解决方案7】:

            Visual Studio 2008 内置的单元测试还可以,但很难与CruiseControl.NET 集成,肯定比普通的 NUnit 难很多。

            如果您打算进行出色的自动化测试,请选择 NUnit。

            【讨论】:

              【解决方案8】:

              我们一直在使用xUnit.net。它似乎结合了 NUnit、MbUnitMSTest 的所有优点。

              【讨论】:

              • 我非常后悔在切换之前没有尝试过浪费时间。
              【解决方案9】:

              也可以试试PEX 工具。

              它是 Microsoft 自己的,可能很快会集成到 VSTS 中。 它确实支持 NUnit、MbUnitxUnit.net

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

              【讨论】:

                【解决方案10】:

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

                【讨论】:

                  猜你喜欢
                  • 2011-05-11
                  • 1970-01-01
                  • 2010-11-12
                  • 2011-04-23
                  • 1970-01-01
                  • 1970-01-01
                  • 2011-11-07
                  • 2018-08-14
                  • 1970-01-01
                  相关资源
                  最近更新 更多