关于单元测试:
我们为什么要做单元测试?
引入单元测试是很简单的,因为它本身就充满了乐趣。然而在项目交付的时候,我们给客户和最终用户的仍然是产品代码,而不包含单元测试的代码;因此,我们必须对单元测试的目的有个充分的认识。首先也是最重要的,使用单元测试是为了使你的工作——以及你队友的工作——完成得更加轻松。
是不是编写单元测试会增加编码的时间, 是不是在浪费时间?
如果你仍然认为在编写产品代码的时候,还是没有时间编写测试代码,那么请先考虑下面这些问题:
1. 对于所编写的代码,你在调试上面花了多少时间?
2. 对于以前你自认为正确的代码,而实际上这些代码却存在重大的bug,你花了多少时间在重新确认这些代码上面?
3. 对于一个别人报告的bug,你花了多少时间才找出导致这个bug 的源码位置?
单元测试的优点?
及时发现问题
从长远看来,使用“立即测试模型”的代价比“延后测试模型”的代价要低。在你编写实现代码的时候,同时编写独立的测试代码,在项目最后就可以避免出现做了无用功的问题;代码中的bug 也会更少,因为你所依赖的都是已经通过测试的代码。于是,通过在开发过程中多花一点时间在编写单元测试上面,你就可以最小化在项目后期花费大量时间的风险。