重构-构筑测试体系

4.1 自测试代码的价值

    编写代码其实只占非常小的一部分。有些时间用来决定下一步干什么,另外一些时间花在设计上,最多的时间则是用来调试。

    类应该包含它们自己的测试代码。

    确保所有测试都完全自动化,让它们检查自己的测试结果。

    一套测试就是一个强大的bug侦测器,能够大大缩减查找bug所需要的时间。

    编写测试代码其实就是在问自己:添加这个功能需要做些什么。编写测试代码还能使你把注意力集中于接口而非实现。

    预先写好的测试代码也为你的工作安上一个明确的结束标志:一旦测试代码正常运行,工作就可以结束了。

 

4.2 Junit 测试框架

    频繁地运行测试,每次编译请把测试也考虑进去-每天至少执行每个测试一次。

    单元测试和功能测试。

    当你收到bug报告,请先写一个单元测试来暴露bug。

 

4.3 添加更多测试

     编写未至完善的测试并实际运行,好过对完美测试的无尽等待。

    考虑可能出错的边界条件,把测试火力集中在那儿。

    当事情被认为应该会出错时,别忘了检查是否抛出了预期的异常。

    不要因为测试无法捕捉所有bug就不写测试,因为测试的确可以捕捉大多数bug。

 

参考资料:

    《重构-改善既有代码的设计》

 

posted @ 2020-07-19 22:14  diameter  阅读(195)  评论(0编辑  收藏  举报