单元测试有助于开发团队有效监测软件模块质量、促进代码深度优化,进而降低线上故障率,长期执行有助于提升项目迭代效率,减少重构成本。《阿里巴巴 Java 开发手册》中总结的单元测试 AIR 原则可供参考:
A:Automatic(自动化)单元测试应该是全自动执行的,并且非交互式的。测试框架通常是定期执行的,执行过程必须完全自动化才有意义。
I:Independent(独立性)保持单元测试的独立性。为了保证单元测试稳定可靠且便于维护,单元测试用例之间决不能互相调用,也不能依赖执行的先后次序。
R:Repeatable(可重复)单元测试是可以重复执行的,不能受到外界环境的影响。单元测试通常会被放到持续集成中,每次有代码 check in 时单元测试都会被执行。