《测试驱动开发》--读书笔记

《测试驱动开发》--读书笔记



前言:
        测试驱动开发(TDD)以测试作为开发过程的中心,要求在编写任何产品代码之前,首先编写用于定义产品代码行为的测试,
而编写的产品代码又要以使测试通过为目标。测试驱动开发要求测试可以完全自动化地运行,在对代码进行重构前后必须运行测试。
这是一种革命性的开发方法,能够造就简单、清晰、高质量的代码。
        测试驱动开发是一种编程时使用的技术。无论在开始编程前进行了怎样的设计和建模,TDD都有助于我们提高代码质量。测试
驱动开发可以赋予你对代码质量的自信以及对代码进行重构的勇气。试想若没有办法保证对可运行代码的修改不会破坏任何先前的
行为,那么怎么能够对代码进行修改?若对代码的重构或修改无意中引入了BUG但却没有一套可以立刻把这种情况告诉你的测试
集,那么怎么能够进行集成?
        采用测试驱动开发:将会得到简单、清晰的设计,代码也将是清晰和bug-free的。同时采用测试驱动开发的结果就是可以让我们
拥有一套伴随产品代码的详尽的自动化测试集。

TDD这个术语有什么含义?
        开发(Development)== >过去那种与软件开发有关的阶段性思考方式日益衰落,因为时间所分隔的各项决策之间的反馈是困难
的。这种意义上的开发意味着一种在分析、逻辑设计、物理设计、实现、测试、审阅、集成和部署之间复杂的跳转。
        驱动(Driven)==>以前称呼测试驱动开发为“测试优先编程”。然后,与“优先”相对就是“最后”了,而很多人是在程序写好后才测
试的。有一种命名规则说:一个名字的反义词应当至少是模模糊糊、不令人满意的。如果你不用测试驱动开发,那么你用什么来驱动
开发?推测?还是规格说明书?
        测试(Test)==>自动、具体、切实的测试。按一个键就可以让测试运行。测试驱动开发不是一种测试技术。而是一种分析技
术、设计技术,更是一种组织所有开发活动的技术。




















































































注:
        测试驱动开发(Test-Driven Development By Example) 美Kent Beck著    孙平平  张小龙 等译  崔凯 校   中国电力出版社 2004


你可能感兴趣的:(Test,Basic,Skills)