使用单元测试可以得到以下好处:
1、提供文档。单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。好的单元测试文档,它们会指出系统要做什么。测试就像原开发人员留下的记号,可以展示他们的类具体是怎么工作的。
2、改善设计:编写测试能改善设计。测试有助于从界面的角度思考,测试框架也是代码的客户。如果确实遵循了“尽量简单而且行之有效”的原则,就不会写出篇幅达几页的复杂算法。要测试的代码通常依赖性更低,而且相互之间没有紧密的联系,因为这样测试起来更容易,修改起来也会更容易。
3、鼓励重构:程序中的每一项功能都是用测试来验证它的正确性。它为以后的开发提供支缓。就算是开发后期,也可以轻松的增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东西。这样就可以更自由的对程序进行改进。利用一套健壮的测试集,便可以根据需要放心地进行重构。同时能保证代码依然简洁。
4、提高速度:一个完备的单元测试集提供了一种方法对系统完成回归测试,这说明,增加一个新特性之后不必因为怀疑它会不会破坏原系统而寝食难安。
5、提供反馈:单元测试还有一个经常被忽略的优点,即开发的节奏。尽管看上去好像无关紧要,但通过测试之后会有一种完成任务的成就感。不会一下子看到冒出一大堆新的特性,而只是让代码每一次前进一小步。