在前两篇中我们聊了很多TDD理论和实践相关的疑惑,其中包括TDD的分类,选择以及其实施步骤。最近TDD相关的培训和讨论也越来越多,比如:
- 学好TDD靠多多练习就可以了,不用学习其理论知识
- 开发应该自己理解业务,并提炼测试(需求)点来实施TDD
- 开发只要做好TDD,就不需要其他人测试了
- 软件没有做好就是因为TDD没有做好
- 等等
而我对于这些片面的说法都是不赞同的,比如我在第一篇讨论中就提到,TDD不是银弹,所以软件没有做好的原因是很多的,也不是靠TDD做好了就一定能做好。其次学习TDD的理论是非常重要的,而仅仅靠不断练习并自悟的方法,对于大部分普通人来说是难以成功的。