日期:2014-05-17  浏览次数:20629 次

MVC便于单元测试
微软随ASP.NET MVC发布了一个“抽象包”,专门用于对HttpContext及其相关组件进行抽象.如HttpContextBase,HttpRequestBase……。在webform里使用的不是抽象类,而是HttpContex、HttpRequest……
mvc架构比较便于单元测试,说这样的抽象类设计便于单元测试

现在想不出为什么使用抽象类,这样可以便于进行单元测试?


还有webform为什么不便于单元测试?

请大家指点下,非常感谢!

------解决方案--------------------
它的意思是说mvc更易于测试

因为MVC程序和HMTL分离得更开,并且控制器也可以进行测试,所以可测试性更高。
在mvc中,视图也就是ASPX页,基本没有什么程序代码,因为aspx很难进行测试,基本是黑盒测式,就是模似用户操作,这样测试品质有点难以保证,所以在aspx应该尽量少写程序。

但webfrom模式,在aspx不但包含无法知道运作过程的控件,还有点。CS代码,都难以测试
------解决方案--------------------
没有界面单元,于是就“便于单元测试”了。这其实是一个不断高喊“1+1=2”的描述,这有什么可聊的呢?
------解决方案--------------------
道理很简单。

为什么芯片比印刷线路板更容易测试?

因为它可以拿下来,放入仿真的外部环境中。

“抽象类”起到了类似的作用,我们可以把程序从Web Server上抠下来,给他模拟的请求响应。

这种模拟,被称为 Mock 对象。
------解决方案--------------------
探讨

没有界面单元,于是就“便于单元测试”了。这其实是一个不断高喊“1+1=2”的描述,这有什么可聊的呢?

------解决方案--------------------
探讨
道理很简单。

为什么芯片比印刷线路板更容易测试?

因为它可以拿下来,放入仿真的外部环境中。

“抽象类”起到了类似的作用,我们可以把程序从Web Server上抠下来,给他模拟的请求响应。

这种模拟,被称为 Mock 对象。

------解决方案--------------------
探讨

道理很简单。

为什么芯片比印刷线路板更容易测试?

因为它可以拿下来,放入仿真的外部环境中。

“抽象类”起到了类似的作用,我们可以把程序从Web Server上抠下来,给他模拟的请求响应。

这种模拟,被称为 Mock 对象。