接下来了解下测试驱动开发(TDD)
  TDD每次针对一个很小的功能点,通常是小到一个单独的方法。
  1. TDD流程:
  a. 在实现新功能之前,先考虑代码的使用需求(包括功能、过程、接口等),为其编写测试代码
  b. 让新写的测试代码和已有的测试代码一起运行
  c. 为新功能编写少的实现代码
  d. 再次让新测试代码和已有的测试代码一起运行,根据运行结果修改实现代码,直到测试全部通过
  e. 在此过程中,积极地对待代码重构,使底层设计和实现更加优化,使接口更加简单
  f. 重复以上步骤
  对TDD的总结:设计代码-->编写代码-->代码不可运行-->可运行-->重构
  2. TDD的目的?
  不是为了验证代码的实现,而是为了描述一段代码的用途和用法的设计规格说明,这种描述是无二义的,是可执行验证的。
  3. TDD的优势在哪里?
  TDD要求测试优先,因此可以使得代码天生具有可测性,也因此保证了几乎的单元测试覆盖,代码中的缺陷密度低,有利于更早地发现缺陷,方便调试。
  TDD大的好处,不是终得到单元测试资产,也不是使单元测试全部通过,而是通过不断对代码进行重构,而终从设计层面对代码做出改进。
  4. TDD与敏捷开发的关系总结: