按开发阶段
单元测试
例如:手机中的美颜功能
单元测试是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。
测试对象:最小模块
测试人员:白盒测试工程师或开发工程师
测试依据:代码和注释+详细设计文档(代码的逻辑结构)
测试方法:白盒测试
测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试
集成测试
集成测试也称联合测试(联调)、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。
主要目的:软件单位之间的接口是否正确。
测试对象:模块间的接口
测试人员:白盒测试工程师或开发工程师
测试依据:单元测试的模块+概要设计文档
测试方法:黑盒测试和白盒测试相结合
测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响。
系统测试
将软件系统看成一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。
测试方法:黑盒测试
测试依据:需求规格说明文档
测试内容:功能、性能、界面、可靠性、易用性、兼容性、安全性等
回归测试
修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。
自动回归测试将大幅降低系统测试、维护升级等阶段的成本。
自动化测试重点进行回归测试