TDD具有明确需求、明确设计、测试即文档、代码质量可控、提高开发效率等优点,但也具有不自动化程度低、资源利用不充分、干扰编程思维等缺点,难以推广、难以长期坚持。
ETDD(Easy TDD),即易行版TDD,是TDD的改进和升级。ETDD继承了TDD的优点,克服了TDD的缺点。改进可归纳为“三化”:可视化、自动化、现实化。
可视化:开发过程中,程序行为可视。可视化降低编程劳动强度,并大幅提升编码效率,中等复杂度的函数,编写效率提高一倍以上,复杂度越高,效率提升比例越大。
自动化:由工具自动完成隔离补齐、测试代码生成、数据表格化、底层模拟、覆盖统计、协助找出遗漏数据等工作。人的工作主要在于:在数据表格中列出程序功能点,这是明确需求、明确设计、促进开发的过程。测试时间成本趋向于零。
现实化: