一个ASP.NET MVC 3 Web应用程序有几个部分组成——模型(model)、控制器(controller)、路由处理器(route-handler)、视图(view)、html-helper、客户端代码等。其中大部分模块都可以进行单元测试,有一些则需要集成测试。关于如何让测试更易维护以及如何避免它们过于脆弱,有一些最佳实践能够帮得到你。
以下是一些测试相关的资源介绍:
1、不仅是actions,你还可以使用MvcScaffolding生成单元测试的基架模板 (scaffolding) ;
2、使用自定义HTML Helpers,而不要在视图中编写大量逻辑,因为前者更容易进行单元测试。另外,测试自定义html-helper时应避免硬编码html元素;
3、使用类似Specflow 的BDD框架编写端到端的验收测试;
4、尽管在路由表之外添加新的路由很容易破坏已有路由,但你可以通过对路由表进行单元测试来避免该问题;
5、打开视图编译开关。 这虽然并不完全是单元测试,但它可以帮助发现运行时才能看到的错误;
6、如果UI变化不大,可以使用WaTiN来测试UI。另外,可以通过使用页面对象(Page Object)调整UI设计改动,来让集成测试变得稍微灵活些;
7、使用一款JS测试框架,如使用Jasmine来测试JavaScript。
您还知道什么其他的测试ASP.NET MVC应用程序的技巧吗?请留言支招。
查看英文原文:http://www.infoq.com/news/2012/03/aspnet-unit-test
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。