最近在组织项目成员的能力提升,不可避免的就进入了TDD这个话题。对于TDD,已经成为很多公司员工入职的专业知识培训课程。网上关于TDD的各种文章和讨论也很多,但是感觉大家都是望文生义,都是先写测试用例,再写代码。
可能有人会说TDD就是“Test Driven Development”,就是测试驱动开发。就是写测试用例,然后再写代码。我承认,书里是这么写的。大家也是这么理解,然后去实践的。实际效果如何呢,就我了解的情况,大家对这个都很纠结。很多都在说,我先写几行代码,然后再写用例为啥就不行了呢?难道真是缺少仪式感吗?
那么我先说说,我最近的思考。TDD方式,实际上是关注点驱动开发,或者说规则驱动开发。我要实现一个关注点/规则,我就先一条用例来验证这个关注点/规则,然后去完成这个关注点/规则的代码。如果按照这个思路去思考,我每次实现一个关注点/规则,我先写用例后写代码,或者先写代码再写用例。每次都是围绕着一个关注点/规则,是否先后顺序就显得不那么重要了。关键是每次聚焦于一个关注点/规则,有测试用例保证这个关注点/规则的准确性。那么就可以放心的去实现下一个关注点/规则,并且保证整个功能的准确了。
以上是我对于TDD的最新理解和思考。各位看过后是否也对TDD也有了新的理解了呢?
也谈TDD
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
- 本文结构: 什么是 TDD 为什么要 TDD 怎么 TDD FAQ 学习路径 延伸阅读 什么是 TDD TDD 有...