软 件 测 试 分 类
01
按测试阶段划分
1.单元测试:
完成对最小的软件设计单元模块的验证工作。对代码风格和规则、程序设计和结构、业务逻辑等进行静态测试。
白盒测试技术,开发人员自己执行。
2.集成测试
通过测试的单元模块组装成子系统,然后再进行的测试,主要测试内容是接口。
集成测试大部分是接口测试和交互测试。
- 自顶向下
- 自底向上
3.系统测试
将整个软件系统全部集成好之后作为一个整体进行的测试。主要包括一下测试方向:
功能测试: 对产品的各功能进行验证,以检查是否满足需求的要求。
性能测试:通过自动化测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
安全测试:检查系统对非法入侵的防范能力。
兼容测试: 测试系统在不同的软硬件环境下是否能够正常的运行。
4.用户验收/确认测试
Alpha测试
–用户在开发环境下进行的测试,Alpha测试是在一个受控的环境中进行的。
Beta测试
–由软件的最终用户在一个或多个用户场所来进行的,开发者通常不在现场,用户记录测试中遇到的问题并报告给开发者。
02
对代码的可见划分:
1.黑盒测试:
又称功能测试或数据驱动测试,是针对软件的功能需求/实现进行测试,通过测试来检测每个功能是否符合需求,不考虑程序内部的逻辑结构。
常见的黑盒测试方法:
- 等价类划分
- 边界值分析
- 因果图
- 错误推测
- 场景法
2.白盒测试:
白盒测试也称结构测试或逻辑驱动测试,必须知道软件内部工作过程,通过测试来检测软件内部是否按照需求、设计正常运行
白盒测试方法:逻辑覆盖(语句覆盖、分支覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖)、循环覆盖(简单循环、嵌套循环、串接循环)。
3.灰盒测试:
灰盒测试介于黑盒测试与白盒测试之间。
03
其他测试分类:
回归测试:
对软件进行修改之后进行的测试,目的是检验对软件进行的修改是否正确。一是所做的修改达到了预定的目的,也就是确认测试,二是还要保证不影响软件的其他功能的正确性。
冒烟测试:
在软件中,“冒烟测试”是指测试版本的主要功能,如果能通过测试,才继续进行接下来的其它全功能测试。
对一个新版本进行大规模测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。目的是确认软件基本功能正常,可以进行后续的正式测试工作。