测试驱动开发的适用性

发表于:2009-11-13 14:16

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Mike Bria    来源:51Testing软件测试网采编

  TDD取代架构了吗?

  你不能通过TDD 得到一个完整的架构。 TDD 可以告诉你某些架构决定,但是你无法在没有架构设计的情况下启动项目。因此某些预先的架构是必要的。其中最重要的一点是决定哪些架构元素可以延迟哪些不能。

  TDD能够替代设计吗?

  不,你仍然需要所有的设计技能。你仍然需要了解设计原则和设计模式。你应该了解UML 。并且,你应该创建软件设计的轻量级模型。

  事实上,TDD 也是 一门设计技术,但不是孤独的设计技术。所有的老设计规则和技能仍然适用。TDD 能够影响和增强它们。

  TDD是否应该应用于每一行代码?

  有些代码时不适合TDD 的。比如,GUI等。当然,不仅仅是 GUI ,它只是一个例子,核心是摆弄(fiddling)的想法:

  1、  你必须把代码摆弄到位。

  2、  你必须摆弄某些方面以满足客户需求。

  3、  如果存在一些不确定新,必须通过快速的周期(高度的迭代)来解决。

  则几种情况下,是不适合仅TDD 开发的。简单的所,就是如果开发的是针对用户定制性很高的产品(或软件模块),或者产品时一个尝试性产品,需要在尝试的迭代中解决问题,这种情况下不适合使用测试驱动开发。

  测试驱动开发可以提高每行代码和每个决定被测试的几率。

  高度自动化的测试覆盖会提升你的速度。原因在于:

  第一,  你不用在调试上花费太多的时间。

  第二,  不会在无意中破坏代码。

  第三,  测试用例在某些程度上,反映了系统的功能。

  第四,  减少后期的维护成本。

相关阅读:

TDD 测试驱动开发

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号