c# -.NET单元测试包?

Translate

几年没有完全使用它之后,请回到更多的.NET,并想知道这些天好的单元测试软件包是什么。

我对NUnit很熟悉(几年前),并且与IronRuby进行了短暂的交流,其目标是使rspec之类的东西继续发展,但除此之外,我所知不多。

我知道我可以用Google来搜索并称之为一天,但是我相信通过在这里提出问题,我可能会得到更好,更明智的回复:-)

有什么建议吗?

This question and all comments follow the "Attribution Required."

所有的回答

Translate

有这么多疯狂。我猜是疯狂的好。

  • 对于保守类型(我),NUnit仍然可用,而且功能强大。
  • 对于Microsoft类型,微软测试足够,但与Nunit相比,速度慢且笨拙。它也缺乏代码覆盖范围,而没有为昂贵的Visual Studio版本付出高昂的代价。
  • 还有单位。它类似于NUnit,但具有一些不错的功能,例如RowTest(使用不同的参数运行相同的测试)和Rollback(将数据库放回,就像您在测试后发现的那样)
  • 最后,xUnit.net是一些态度的时髦选择。
  • 哦还有TestDriven.NET将为您提供Nunit和MBunit的IDE集成。

我相信他们都很好。不过,我还是避开了MSTest,除非您只是享受将所有功能都集成在一个IDE中的便利性。

斯科特·汉塞尔曼关于这个话题有一个播客。

来源
Translate

我们使用NUnit和MBUnit这里。我们用TestDriven.NET在Visual Studio中运行单元测试。我们使用优秀的,强烈推荐犀牛作为一个模拟框架。

来源
Translate

坚持使用NUnit。不要靠近MSTest。

使用NUnit + ReSharper绝对是一件令人愉快的事情。

来源
Translate

我曾经使用NUnit,但现在倾向于使用MbUnit,它具有以下两个主要功能:1. RowTest功能使您可以轻松地对不同的参数集运行相同的测试,如果您确实希望进行全面介绍,则这非常重要。 2.回滚功能使您可以对数据库运行测试,同时在每次测试后回滚更改,从而使数据库始终保持完全相同的状态。就像添加[Rollback]属性一样简单。

MbUnit的另一个不错的方面是它的语法与NUnit几乎相同,因此,如果您已经在NUnit下放置了一个完整的测试平台,则只需切换引用即可,而无需更改任何代码(很多?)。

来源
Translate

xUnit.net看起来为N / MB / MS / Unit提供了一种稍微不同的方法,这很有趣。

在寻找类似rspec的解决方案(因为我喜欢rspec)时,我也遇到了规格书,看起来有些罗word,但与NSpec扩展使用C#3扩展方法的插件,看起来非常不错。

来源
Douglas Lee
Translate

我使用以下内容:

TestDriven.NET-适用于Visual Studio的单元测试插件

Typem隔离器-.Net单元测试的模拟框架

NUnit-C#中的开源单元测试框架。

来源
Translate

这是一个古老的问题,但是您可能会发现Gallio v3.1现在通过IronRuby支持RSpec很有意思。

来源
Translate

我喜欢TestDriven.NET(即使我使用ReSharper),我也很满意XUnit.net。它使用事实而不是很多人不喜欢的测试,但是我喜欢术语上的差异。考虑一下有关软件的可自动证明的事实,并在进行更改时查看违反了哪些事实,这很有用。

意识到Visual Studio 2008 Professional(及更高版本)现在带有集成的单元测试(以前仅在Team System Edition中可用),并且可能适合您的需求。

来源
Translate

我举了一个使用ironRuby测试.net库的小例子:http://khebbie.dk/post/2008/08/Example-of-using-ironRubys-mini_rspec-library.aspx

来源
Translate

我曾经使用NUnit,但是由于它具有更多功能,所以我切换到了MbUnit。我喜欢RowTest。它使您可以对测试进行参数化。 NUnit确实有更好的工具支持。我正在使用ReSharper运行MbUnit测试。我在运行MbUnit的SetUp方法的TestDriven.NET遇到问题。

来源
Translate

就我而言,这确实是个人观点(我想这是多余的,因为它是一个论坛)。 NUnit,MSTest等都可以做同样的事情。但是我发现NMock是必不可少的。

NMock或任何模拟程序包都不是单元测试,但是它使单元测试变得非常容易,因此也很容易。

来源
Translate

我喜欢单位加利奥。对我来说最重要的是在Visual Studio中拥有良好的工具支持。为此,我用收割者,其中有一个MbUnit测试运行器。很多人似乎喜欢TestDriven.NET作为他们的测试跑步者。

来源