测试驱动开发的读书笔记(五)

什么需要测试

  *条件部分、循环部分、操作部分、多态性

  *为了测试,需要的设置代码要精简,和避免重复;运行时间不宜过长;不宜很容易被打断

  另外测试驱动开发的观点和常见的设计观点是相冲突的,一般提倡的是“编码为今天,设计为明天”,而测试驱动开发则是“设计为今天,编码为明天”

  因此测试驱动开发认为测试更应该注重实效,他是一种让开发充满自信的编写代码的目的,也是一种对你所写代码的文档说明。因而如果我们对实现充分了解,不用测试也能拥有自信的话,那就不用编写测试。

测试开发的呆子哲学:

  存在一个假定:清晰的代码是通向成功的唯一道路。认为测试驱动开发不是一种测试技术,而是一种分析技术、设计技术,更是一种组织所有开发活动的技术。

测试驱动开发的局限性:

1、GUI无法实施

2、分布式对象(如RPC何消息传送方式,无法实施)

3、开发数据库模式,无法实施

4、BNF开发出产品质量的语言编译器/解释器无法实施 

5、图形方面的很难实施

个人观点:

  测试驱动开发的那人,真是一个敏捷院派的代表;TDD的本意是好的,目的是为了写出clean code that works。  

     1、所谓的测试“驱动”,实际上是希望编写代码的人,能够根据自己心里定义的功能(以测试的形式),在编写完代码后,重构出清晰的代码。本质上是为了说明软件完成了需要的功能,而不是为了验证软件中的质量水平

  2、其实他是有设计的,只不过他不把设计当做一个很长的阶段,因为他只需要考虑当前的设计,而不需要花时间考虑设计的可扩展性,也就是“设计为今天,编码为明天”。

  但是国内流传的观点,往往歪曲或者根据某种需要来断章取义,强调或夸大了附加价值,而失去了本意!

相关链接:

测试驱动开发的读书笔记(一):http://www.cnblogs.com/xwj-pandababy/articles/2128880.html

测试驱动开发的读书笔记(二):http://www.cnblogs.com/xwj-pandababy/articles/2130958.html

测试驱动开发的读书笔记(三):http://www.cnblogs.com/xwj-pandababy/articles/2133841.html

测试驱动开发的读书笔记(四):http://www.cnblogs.com/xwj-pandababy/articles/2133929.html

测试驱动开发的读书笔记(五):http://www.cnblogs.com/xwj-pandababy/articles/2134644.html

posted @ 2011-08-11 11:27  宇月--测试开发梦想家  阅读(202)  评论(0编辑  收藏  举报