Jer*_*ose 6 c# nunit unit-testing visual-studio-2010 asp.net-mvc-3
我是TDD的新手,正在研究我的Visual Studio 2010解决方案的单元测试选项.这个解决方案是一个MVC3 Web应用程序,我试图将DDD与IoC,存储库和工作单元格一起使用.它还使用EF4和EF4 POCO模板.(我试图从微软N层应用程序中模拟大部分内容,同时借用其他几个博客的设计模式).
我一直在搜索和阅读这个问题几个小时,而且我发现在任何地方我都发现了相互矛盾的信息.其中很大一部分原因是由于旧的结果出现,以及Visual Studio 2010的不断发展的选项.
我知道有几种选择,但同样,我很难从较新的选项中辨别出过时的选项,并且人们使用的引用中存在一些含糊之处.即使是这里的热门讨论也有一些陈旧/含糊/冲突的信息.
例如:
MSTest,Visual Studio单元测试框架和Microsoft.VisualStudio.TestTools.UnitTesting
?之间有区别吗?如果是这样,什么?看起来这些是不同的,但在我看过的一些讨论中被错误引用.
由于NUnit的作者也创作了xUnit,这是否意味着xUnit取代了NUnit,因此不推荐使用NUnit?似乎有些人,甚至今天,更喜欢NUnit.但是如果NUnit被弃用了,为什么今天会开始使用NUnit而不是xUnit呢?如果NUnit没有被弃用,这是否意味着xUnit没有像最初的预期那样起飞?为什么作者会继续支持两个看似冗余的工具?
哪些这些集成到VS2010中而无需单独执行命令行来测试,或者必须购买TestDriven.Net等工具?(但我确实有ReSharper,如果这支持其中任何一个.)
最近是否有任何显着的变化会使这些无效的旧讨论变得无效?
除了我上面提到的那些之外,还有其他我应该考虑过的吗?
我不一定要寻找深入的比较(尽管如果你愿意,你会非常欢迎提供一个),但更多的是当前正在使用的当前工具的最新共识新的VS2010开发.
从表面上看,"Visual Studio单元测试框架"似乎可以很好地集成到VS2010(Pro)中,并且看起来很容易快速启动和运行,而不是其他一些,即使它是有点臃肿.但是因为我是新人,所以我不想在未来3个月内进入它,然后意识到我已经把自己画成一个角落,因为它似乎更容易接受.
我也知道这个问题可能被一些人认为是一个"坏"的问题,因为它具有开放和广泛的性质,但虽然这些是不同的问题,但我觉得它们都是相关的,都源于我对模糊的一般混淆我在VS2010中发现了单元测试的相互矛盾.
提前致谢.
编辑:这是对我上面提到的近三年流行讨论的更新讨论.这个讨论有一些好处,但很多事情(可能)在三年内发生了变化,我更喜欢这个主题的更新评价.
4和5事情不断变化,难以形成最终答案.
简介:NUnit更易于学习(将花费你一天或更少的时间),如果你知道的话,TDD的大多数文献都会更容易理解.我个人从未有过移动的理由(例如,NUnit没有这样做,xUnit没有这个,我不能没有这个).除非你对MS-CI(以及"免费"Coverage和TestImpact)很重要,否则我会说从NUnit开始,然后继续努力.没有银色试运行员.
该工具不保证成功,而是您使用这些工具的方式.选择一个,开始并适应.
HTH