【问题标题】:Which unit testing framework? [closed]哪个单元测试框架? [关闭]
【发布时间】:2011-01-16 18:04:27
【问题描述】:

我想知道哪个单元测试框架是一个真正熟悉的好框架?我知道这可能是一个意见问题,但我想我还是会问。我知道有一天我需要这样做,所以我不妨学会使用它。我知道那里有很多,但是哪一个对 C# 开发有效?

this问题我可以看出单元测试是必要的,但我个人没有使用它。所以这就是我问这个问题的原因。

【问题讨论】:

  • 这确实是一个糟糕的问题,应该作为 S&A 关闭。除了“嘿,我使用 xyz,它真的很酷”之外,它也不包含任何好的答案,对于任何搜索当前框架比较的人来说,它也不是一个有价值的资源。
  • 我发现这是与我谈论这个网站的人的主要问题之一。你有这些关于提问被问题喷子轰炸的问题的严格规则,人们只是希望能够提出一个诚实的问题并得到一个好的答案。如果您要整理每个问题,也许可以整理出不好的答案,让人们按照他们想要的方式从这个网站社区整体学习。这不可能是第一次,人们在这里提问的次数也不会那么少。所以想办法解决这个问题,然后在 6 个月内禁止人们提问。

标签: c# .net unit-testing


【解决方案1】:

不要纠结于选择框架。只需选择一个并开始测试 - 它们并没有那么不同。当您编写了一段时间的测试后,您就会知道要寻找什么来满足您的需求。

就我个人而言,我发现xUnitTestdriven.NetMoq 是一组非常灵活的测试工具。

另请参阅此帖子:NUnit vs. MbUnit vs. MSTest vs. xUnit.net

【讨论】:

  • +1 起订量!喜欢那个框架。
【解决方案2】:

我会选择NUnit

一些链接: NUnit QuickStart, NuGet Package

【讨论】:

  • ReSharper 为 NUnit 提供了无缝的 IDE 集成(以及更多好处)。
  • 我听说(还没有尝试过)今天,MSTest 有了显着的改进——并且并不落后于 NUnit 或其他。真的吗?或者即使在今天,您还会推荐将 NUnit 用于新项目吗?
【解决方案3】:

我决定坚持使用 NUnit,因为 ReSharper 提供原生 IDE 支持(这可以节省大量时间)。 TeamCity 还支持它运行和报告自动化测试。

【讨论】:

    【解决方案4】:

    我使用 NUnit 作为测试框架,使用 ReSharper 将其集成到 VS(以及 ReSharper 所做的一切)。

    【讨论】:

    • 哎呀。锐化。已修复,谢谢。
    【解决方案5】:

    使用 MbUnit(与 Gallio 一起)、NUnit、MsTest 或 xUnit。您可以组合多个单元测试。我使用 NUnit 进行 TDD

    【讨论】:

    • 这不适用于 VS2015
    【解决方案6】:

    测试有几个原因,因此有几个测试环境。此外,还有测试级别,例如简单、存根和模拟。例如,您可以测试行为而不是状态。

    就功能而言,我通常使用Visual Studio内置的setup,添加对NUnit dll的引用,并将c#注解更改为NUnit。这是因为我喜欢在 Visual Studio 之外进行测试,尤其是当它涉及我团队中的其他人时(而且我们还没有购买 VS 的团队版)。

    【讨论】:

      【解决方案7】:

      就个人而言,我更喜欢 Visual Studio 单元测试框架,主要有两个原因:

      • 它与 IDE 无缝集成;
      • 在开发环境中部署的程序少了一个。

      话虽如此,几乎任何单元测试框架都可以解决问题,重要的是进行测试!

      【讨论】:

      • 这样做的缺点是:如果您想要(您愿意!)运行测试的持续集成构建,您的 TFS 也需要 VS 许可证。对于更大的商店或合作伙伴来说,这可能没有问题,但至少还有一件事需要考虑。
      • NUnit 现在支持与 IDE 无缝集成,并且不需要任何部署(如果使用 NuGet)。
      • @mbx - TFS 构建代理不需要 VS 许可证。
      • @Spivonious 从技术上讲,TFS/Build 代理需要许可的 VS。但是:如果您有一个或多个具有 MSDN 的 Visual Studio Enterprise 或具有 MSDN 的 Visual Studio Professional 的许可用户,那么您也可以将 Visual Studio 软件作为 Team Foundation Server 2015 构建服务的一部分进行安装。这样,您无需购买 Visual Studio 许可证,即可为每个操作启动构建的人在构建服务器上运行 Visual Studio。 请参阅:VS and MSDN Licensing Whitepaper
      猜你喜欢
      • 2010-10-18
      • 2010-09-21
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-18
      • 2011-09-10
      相关资源
      最近更新 更多