2010-05-26 233 views
6

我一直在阅读有关MVC,其中作者认为可测试性是MVC的主要优势之一。他们会将其与ASP.NET WebForms进行比较,以及在WebForms中测试代码的难度。单元测试ASP.NET代码

我明白这很难,但有人可以解释一下如何编写单元测试以测试旧代逻辑背后的代码吗?

回答

3

背后的代码是在类方法平原(与另一类,唯一的区别是,这类从页对象继承)

因此,它是可以测试的。 由于这些方法紧密结合web.ui控件(如网格),因此出现了大多数问题;他们并不容易假冒。 如果你没有伪造UI控件,你也在测试UI控件的内部工作原理,这有点过头了。

5

在过去,我使用模式模型视图展示器测试了aspnet webforms。我能够用这种模式测试代码,因为我将条件逻辑/循环/ etc抽象为一个不在webforms框架内的独立类。

留在webforms代码中的东西只不过是一些属性和页面加载中的一个调用来初始化演示者类本身。

然后每个事件处理程序将简单地将工作传递给演示者类。

我花了很多时间使用这种模式,发现它使测试变得更加友好,但与aspnet mvc相比,它有很大的工作量