使用ASP.NET MVC 3学习TDD的资源

7
在asp.net MVC 3上进行TDD是否可能?如果可能,有哪些好的在线资源?据我所知,MVC 3是目前可用的最新版本。但是我在谷歌上搜索的大多数tdd文章都是针对MVC 1的。甚至我能找到的唯一两本关于在MVC中进行TDD的书籍都是针对1.0版本的。Asp.net MVC Test Driven DevelopmentTest Drive asp.net MVC
即使在官方微软网站上,关于MVC TDD Walkthrough的文章也是针对MVC 2.0的。
这让我开始怀疑TDD在asp.net MVC上是否实际可行,或者它是否得到了大力支持。

这让我开始认为在asp.net MVC上使用TDD不切实际,或者说它的支持程度不高是完全错误的。 - VJAI
1
TDD是一种开发软件的方式,与您选择的技术没有太大关系(尽管某些技术-例如MVC-使单元测试代码更容易)。此外,当您能够使用TDD编写MVC1应用程序时,为什么认为您不能使用MVC3做同样的事情呢? - Steven
3
@Mark,我很希望自己是错的。请指引我一些关于如何在asp.net mvc上进行TDD的最新资源,我正在尝试中但找不到任何资料。你说我“完全错误”,但没有给我任何证据。 - Brand
TDD是一种构建坚如磐石的应用程序的方法,它在实际实现之前创建测试。 - Yusubov
2
Steven Sanderson在他的所有MVC相关书籍中都涵盖了TDD,包括Pro ASP.Net MVC3,我强烈推荐给任何正在做ASP.Net MVC的人。 - Aleksey Cherenkov
4个回答

5

2

我理解某些方面是通用的。但在MVC方面进行测试将涉及到控制器、模型等内容。或者说,asp.net MVC并不支持除纯单元测试以外的任何东西?我来自Rails,他们为控制器、模型、视图、路由等所有内容都编写了测试。而在Rails中进行TDD可能与在纯Ruby应用程序中进行TDD有很大不同。我原以为在.net MVC中也会类似。 - Brand
控制器易于测试,路由有点混乱,因为它们需要一些存根和设置代码。模型通常不是问题,因为它们实际上没有依赖于MVC框架本身。我还要说,在MVC中进行V和C的TDD并不能让你走得更远,因为设计已经固定了。对模型和业务层进行TDD可能会揭示更多信息。 - OdeToCode

1

0

可测试性一直是目标。我猜你不会看到“使用MVC 3进行TDD”作为一个专门的主题,其中一个原因是自从v1.0以来技术并没有改变。在我在asp.net网站上的MVC 3课程的介绍视频中,我涵盖了使用nUnit对控制器操作进行单元测试。


感谢K. Scott Allen的回复!解释了我为什么感到困惑。顺便说一下 - 我是你博客的忠实粉丝,但已经有几年没有接触过.NET领域了。 - Brand

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接