TDD基础
2017-12-03 本文已影响19人
邹小月
定义
TDD是一种不同于传统软件开发流程的新型开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后值编写使测试通过的功能代码,通过测试来推动整个开发的进行。有助于编写简介可用和高质量 的代码,并加速开发过程。
TDD编码方式与传统编码方式的区别
传统的编码方式
传统编码方式需求分析细节不清楚,细节不明物而,需要不断的跟业务人员确认,代码写好后很乱,不敢动手修改。
TDD编码方式
先分解任务,然后写例子,用实例化需求澄清细节,然后写测试,只关注需求就好,接着写实现,在通过测试之后再进行重构,用重构的方法消除代码里的不足 ,写完之后,在手动测试一下,如果还有问题补个用例,修复一下,转测试,补用例,修复就好了。这样写出来的代码很整洁,而且容易修改。
为什么TDD
使用TDD的话我们会提高效率,提前确认需求,减少开发的中断和等待 ,节省调试空间。质量方面搞测试覆盖率而且自动回归测试,所以会提高代码质量。
如何做TDD
两种途径:
做设计
先做好设计,再用测试驱动的方式,小步快走,稳妥的吧程序做出来
不做设计先实现最基本的需求,在不断地添加更复杂的需求,慢慢的将程序驱动出来
做TDD的步骤
- 快速新增一个测试
- 运行所有的测试(有时只需要运行一个或者一部分),发现新增的测试不能通过
- 做一些小小的改动,尽快地让测试程序可运行,为此可以再程序中使用一些不合情理的方法
- 运行所有的测试,并且全部通过
- 重构代码, 以消除重复设计,优化设计结构