单元测试:
最小设计单元(模块)的验证,确保模块被正确编码,对重要控制路径进行测试以发现模块内错误,通常情况下是白盒测试,对代码风格和规则、程序设计和结构、业务逻辑等进行静态测试,及早发现解决不易显现的错误。
集成测试:
通过测试发现与模块接口有关的问题,将通过了单元测试的模块拿来,构造一个在设计中所描述的程序结构,避免一次性的继承,采用增量继承。测试接口是否一致、模块间数据流控制流是否按照设计实现其功能、以及结果的正确性验证。可以是整个产品的集成测试,也可以是大模块的集成测试。(黑盒白盒相结合)
自顶向下集成:首先集成主模块,按控制层次结构向下集成,隶属于主模块的模块按照深度优先或广度优先的方式集成到整个结构中去。
自底向上集成:从原子模块开始构造和测试,因为模块是自底向上集成的,进行时要求所有隶属于某个给顶层次的模块总是存在的,也不再有使用稳定测试桩的必要。
冒烟测试
针对每个版本或每次需求变更后,在正式测试前,对产品或系统的一次简单的验证性测试。
用于确认代码中的更改会按预期运行,且不会破坏整个版本的稳定性。
系统测试:
基于系统整体性需求说明书的黑盒类测试,覆盖系统所有联合部件。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足需求规格的定义,找出不符或与之矛盾的地方。系统测试的对象:需要测试的的系统产品的软件、软件依赖的硬件、外设甚至某些数据、某些支持软件和接口等。因此,将以上所有结合起来,在系统实际运行环境中测试。
回归
测试
回归测试是指修改了旧代码后,重复以前的全部或部分的相同测试以确认修改没有引入新的错误或导致其他代码产生错误
验收测试:
系统开发生命周期方法论的一个阶段,这时相关用户和独立测试人员根据测试计划和结果对系统进行测试和验收,它让系统用户决定是否接收系统,它是一项是否能够满足合同或用户所规定需求的测试,包括(Alpha测试、Beta测试)
Alpha测试:内测版本,开发者内部交流;是由用户在开发者的场所来进行的,在一个受控的环境中进行。测试完后一般不会有大问题
Beta测试:公测版本,面向所有用户;由软件的最终用户在一个或多个用户场所来进行的,开发者通常不在现场,用户记录测试中遇到的问题并报告给开发者,开发者对系统进行最后的修改,并开始准备发布最终的软件。
Gamma测试:指软件正式发行的候选版,相当成熟,与正式版本相差无几,成为正式发布的候选版。
单元测试、集成测试、冒烟测试、系统测试、回归测试、验收测试