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 对象。
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------