TDD

  • 写失败的单元测试 -> 设计
  • 写代码,保证测试通过
  • ​重构
  • 原则:
    • 除非有失败的测试,否则不要写新的代码
    • 对所有可能失败的东西进行测试

先写测试的原因

  • 先写测试=设计
  • 专注于一个情况,然后渐进式增加测试用例来增加对应的各种情况
  • 先写测试=确定需求

TDD是一种设计技巧

  • TDD更类似于设计技巧而不是测试