报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

ASP.NET MVC 测试方法与技巧

  • 2012-03-20
  • 本文字数:538 字

    阅读完需:约 2 分钟

一个 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

2012-03-20 18:524358
用户头像

发布了 125 篇内容, 共 39.5 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

全球唯一云厂商 华为云入选2023Gartner云数据库管理系统客户之选

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

数字时代云成本越来越高,企业IT负责人们该如何选择弹性云服务器呢?

YG科技

云原生应用交付平台Orbit设计理念与价值主张

CODING DevOps

云原生 Orbit

华院计算宣晓华:未来十年,基于数据与知识融合的模型将大放异彩

TE智库

人工智能 AI 华院计算

如何用数字人技术让课堂活起来?番职院和3DCAT实时云渲染给出答案

3DCAT实时渲染

元宇宙 实时云渲染 虚拟数字人 AI虚拟形象

作为IT从业者,为什么我推荐华为云ECS?

平平无奇爱好科技

接口测试|Fiddler界面主菜单功能介绍(二)

霍格沃兹测试开发学社

fiddler

研发效能平台的“双流”模型

CODING DevOps

聊一聊“会员制”

鲸品堂

会员中心 付费会员 企业号 6 月 PK 榜

企业OA上云靠谱最重要,多年业务推进为何华为云成为我的首选?

平平无奇爱好科技

时序数据库 TDengine 与 OpenCloudOS8、TencentOS Server2&3 完成产品兼容性互认证明

爱倒腾的程序员

涛思数据 时序数据库 ​TDengine taosdata

融云WICC2023:成为「卷王」的路上,如何更好借力 AIGC

融云 RongCloud

互联网 融云 泛娱乐 出海 通讯

卡口服务 —— 基于前端巡检系统的拓展实践|得物技术

得物技术

从实际业务出发,OA上云我更推荐华为云

平平无奇爱好科技

接口测试|Fiddler界面工具栏介绍(一)

霍格沃兹测试开发学社

fiddler

为何选择美国主机来托管你的网站?

一只扑棱蛾子

美国主机

中国的“贝尔实验室”:我们的数据库从内核的第一行代码写起

YashanDB

企业上云数据安全不容忽视,华为云ERP上云解决方案全面保障信息安全

YG科技

作为ISV,这是我为什么选择华为云ECS的理由

平平无奇爱好科技

学习 SSL/TLS ,这一篇就够了

火山引擎边缘云

TLS 证书 SSL证书

中国自动驾驶发展加速,已实现多场景落地应用

数据堂

接口测试|Fiddler界面工具栏介绍(二)

霍格沃兹测试开发学社

fiddler

敏捷工具盘点

顿顿顿

敏捷工具 scrum工具 scrum敏捷工具

沙利文发布《2023中国数据管理解决方案市场报告》,腾讯云位列领导者梯队

说山水

Cloud Studio 浏览器插件来啦

CODING DevOps

全方位赋能开发者成长!华为开发者联创日·深圳站圆满落幕

彭飞

生态共建丨YashanDB与天玑数据完成兼容互认证 - 知乎

YashanDB

LangChain Java-the Java implementation of LangChain

HamaWhite

openai LLM #LangChain langchain LLM模型

高效协同办公+降本增效,华为云OA上云解决方案做了什么?

YG科技

ASP.NET MVC测试方法与技巧_语言 & 开发_Roopesh Shenoy_InfoQ精选文章