BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

ASP.NET MVC测试方法与技巧

| 作者 Roopesh Shenoy 关注 0 他的粉丝 ,译者 曹如进 关注 0 他的粉丝 发布于 2012年3月21日. 估计阅读时间: 1 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

一个ASP.NET MVC 3 Web应用程序有几个部分组成——模型(model)、控制器(controller)、路由处理器(route-handler)、视图(view)、html-helper、客户端代码等。其中大部分模块都可以进行单元测试,有一些则需要集成测试。关于如何让测试更易维护以及如何避免它们过于脆弱,有一些最佳实践能够帮得到你。

以下是一些测试相关的资源介绍:

  • 不仅是actions,你还可以使用MvcScaffolding生成单元测试的基架模板 (scaffolding) ;
  • 使用自定义HTML Helpers,而不要在视图中编写大量逻辑,因为前者更容易进行单元测试。另外,测试自定义html-helper时应避免硬编码html元素
  • 使用类似Specflow 的BDD框架编写端到端的验收测试;
  • 尽管在路由表之外添加新的路由很容易破坏已有路由,但你可以通过对路由表进行单元测试来避免该问题;
  • 打开视图编译开关。 这虽然并不完全是单元测试,但它可以帮助发现运行时才能看到的错误;
  • 如果UI变化不大,可以使用WaTiN来测试UI。另外,可以通过使用页面对象(Page Object)调整UI设计改动,来让集成测试变得稍微灵活些;
  • 使用一款JS测试框架,如使用Jasmine测试JavaScript

您还知道什么其他的测试ASP.NET MVC应用程序的技巧吗?请留言支招。

查看英文原文:http://www.infoq.com/news/2012/03/aspnet-unit-test

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT