如何在ASP.NET WebForms中实现TDD
|
我知道微软推出ASP.NET MVC的原因是为了简化ASP.NET的测试驱动设计(TDD)。但是,我有一个相当大的棕色字段(现有)应用程序在ASP.NET WebForms,我想实现一些TDD类型的功能。我假设有一种方法来做到这一点,但什么是一些可行的选择? 解决方法Microsoft介绍了ASP.NET MVC,因为他们认为他们可以从一个未开发的市场赚钱 – 那些觉得Web窗体太“重量级”,谁使用更轻量级的框架编程。这包括那些习惯于MVC范式的人。它还包括那些不能想出如何在Web表单中进行单元测试,以及谁想使用单元测试和TDD的人。 使用Web表单的方式与其他方式一样,是将UI代码分离成类库中的单独类。使用TDD来开发这些类。 下一层的争议是是否有必要使用TDD来开发代码的其余部分:标记,客户端代码,用户交互等。我的回答是,如果你有其他的隔离和测试,不值得为此使用TDD的麻烦。 请考虑:您的网页需要有特定的外观。你要写一个失败的单元测试来证明你正在使用CSS吗?要证明你使用正确的CSS样式?我不这么认为。 澄清:在TDD中,我们从失败的单元测试开始。然后,我们进行最简单的可能的更改,将使测试成功。 想象一下,对于网页使用TDD。你会生产什么失败的测试? >测试该页面是否正确的HTML >“输入ID”标签 >在GET之后测试数据网格是否为空 并且没有上述测试的页面的外观。它们都不会测试页面上任何JavaScript的客户端行为。 我认为这很蠢。而应测试根据ID检索数据的DAL方法。确保它返回ID为1的正确的ID。然后,手动测试页面以确保它看起来正确需要多长时间,您可以输入“1”并单击“Go”,并且出现在网格是客户1的正确数据? 测试驱动开发和自动化单元测试旨在测试行为。 Web表单的UI主要是声明性的。这里有一个大的“阻抗不匹配”。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ELMAH没有记录违规代码行号
- .net – 如何保持验证DRY?
- asp.net-mvc – BestPractices:在MVC-Controller中使用多个
- asp.net – 如何从HTTP请求获取MAC地址?
- asp.net-mvc – ASP.NET MVC检查角色里面的视图
- asp.net-web-api2 – ASP.NET 5(vNext)/ Web API / OAuth /
- ASP.NET MVC,Ninject,每个请求多个构造函数的单个实例
- asp.net – 在开发,分段和生产环境之间区分web.config
- asp.net-mvc – 我应该在ASP.NET MVC3中附加自定义用户上下
- asp.net – 从域到www.domain的全局301重定向
- asp.net-web-api – 什么时候使用HttpMessageHan
- 如何在ASP.NET RadioButtonList中的项之间添加空
- asp.net-mvc – 如何为MVC4配置Ninject并提供自定
- asp.net – HttpError iis config在添加默认路径
- 在ASP.NET Web App中查找内存泄漏
- asp.net-mvc – 如何在我的Asp.net Mvc中使用lin
- views – 我应该在asp.net MVC6中为我的所有图像
- 寻找一个使用Lucene.net与ASP.NET的例子
- 有没有办法将一个onclick事件添加到ASP.NET标签服
- asp.net-mvc-5 – MVC5中的域路由
