1.1 单元测试概述
所谓单元测试,是指对软件设计的最小单位,进行正确性检验的测试工作。而检验的方法,一般来说是由开发人员编写一小段测试代码,根据被测目标代码的应用场景,设计拥有合理覆盖度的输入条件,调用执行目标代码,然后判断输出结果是否与预期一致。被测试目标代码一般应具体到类的方法层面上。
总之,单元测试是一个方法层级上的测试,单元测试也是最细粒度的测试,用于测试一个类的每一个方法都已经满足了方法的功能需求。
单元测试的目的在于发现目标代码中可能存在的错误。单元测试一般与编码同步进行,以便及时发现编码过程中可能存在的缺陷并使其尽早得以修正。当然,在开发后期也可以开展单元测试活动,用以保证代码质量,支持后续的代码重构。
在现代软件开发周期中,以拥抱需求变化、倡导快速开发等理念日益获得业界重视的敏捷开发过程十分推崇单元测试,已经把单元测试作为贯穿整个开发周期的一个重要的开发活动。在敏捷开发过程中,有持续集成和渐进提交的方法论,已经总结出了非常好的单元测试理论和实践。如TDD实践的提出,将单元测试提升到与需求分析一致的地位,直接弱化设计阶段,它认为可以通过单元测试活动来驱动整个开发过程。
单元测试一般可划分为以下五个阶段:</