软件测试的分类有哪些

栏目:成人教育  时间:2023-03-25
手机版

  1. 基本分类

  □ 白盒测试

  □ 黑盒测试

  □ 灰盒测试

  2. 按测试阶段分类

  □ 单元测试

  □ 集成测试

  □ 系统测试

  □ 验收测试

  3. 按测试目的或对象分类

  □ 数据和数据库完整性测试

  □ 白盒测试

  □ 功能测试

  □ 用户界面测试

  □ 性能测试

  □ 安全性和访问控制测试

  □ 故障转移和恢复测试

  □ 配置测试

  □ 安装测试

  □ 多语种测试

  □ 文字测试

  □ 分辨率测试

  □ 发布测试

  □ 文档测试

  1. 白盒测试

  白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作,是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

  白盒测试是穷举路径测试。

  2. 白盒测试主要是想对程序模块进行如下的检查:

  □ 对程序模块的所有独立的执行路径至少测试一遍

  □ 对所有的逻辑判定,取真或取假的两种情况都能至少测试一遍

  □ 在循环的边界和运行的界限内执行循环体

  □ 测试内部数据结构的有效性

  3. 白盒测试目前主要用在具有高可靠性要求的软件领域,例如:军工软件、航天航空软件、工业控制软件等。

  1. 黑盒测试

  黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。它着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。它从用户的角度,从输入数据和输出数据的对应关系出发进行测试的。

  2. 黑盒测试的目的是试图发现以下几类错误:

  □ 是否有不正确或遗漏的功能

  □ 在接口上,输入是否能正确的接受

  □ 能否输出正确的结果

  □ 是否有数据结构错误或外部信息(例如数据文件)访问错误

  □ 性能上是否能够满足要求

  □ 是否有初始化或终止性错误

  1. 灰盒测试

  灰盒测试是介于白盒测试与黑盒测试之间的,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,是基于对程序内部细节有限认知上的测试方式。灰盒测试不像白盒测试那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。

  2. 灰盒测试的特点:

  □ 灰盒测试比白盒测试效率高,从程序的整体出发,而非细节

  □ 灰盒测试健壮性好,相对于白盒测试降低了程序代码改变而导致用例失效的风险

  □ 灰盒测试更细致,灰盒测试要求测试人员关注程序的代码逻辑,根据代码逻辑扩充用例,更加细致

  

  1. 单元测试的目的是:

  □ 在开发环境中,程序设计工程师为了检查单元程序模块内部的逻辑、算法和数据处理结果的正确性等

  □ 单元测试通常由负责编码的工程师自己在代码完成后测试,也有在项目组内,由工程师相互交叉测试

  □ 项目经理的管理一般不深入到单元测试

  2. 单元测试的内容主要是:

  □ 算法逻辑

  □ 数据定义的理解和使用

  □ 接口

  □ 各种Case的路径

  □ 边界条件

  □ 错误处理

  3. 单元测试的活动

  □ 单元测试计划和测试用例被评审和批准,并在基线控制下

  □ 按计划执行单元测试用例

  □ 更新需求跟踪矩阵以确认测试覆盖率

  □ 进行缺陷分析

  □ 完成单元测试报告等

  4. 单元测试的度量:

  □ 代码覆盖百分比

  □ 与代码标准的符合度

  □ 循环复杂度

  □ 代码行数

  □ 路径数

  □ 参数

  □ 缺陷密度等

  1. 集成测试又称组装测试,它是在单元测试完成后,组装成一个子系统后,对下列只有组装后才能发生和测试到的问题进行检查:

  □ 组装后一个模块对另一个模块的影响

  □ 合并功能是否是预期的

  □ 独立的误差在合并后的变化,是扩大还是缩小,是否在可接受的范围内

  □ 实际的接口测试,包括:模块之间对实际衔接的标准、实时性、应答响应、容错与错误处理等

  □ 模块间的资源竞争等

  2. 通常采用分阶段的增量组装测试,避免因一次集成造成问题的隔离和区分不易。

  3. 系统测试的目的是按照与用户确认的软件需求规格说明书的要求,检查系统的需求实现。

  4. 独立的测试组中,具有相应知识的测试工程师,根据需求规格说明书以及用户将会在什么环境下,如何使用该软件,来设计测试方案和测试用例,并进行测试。

  5. 系统测试还包括软件修改后的再测试-回归测试,回归测试是对已测试并发现故障的部分修改后再测试。它可能不需要再完整地走一遍系统测试,只需选择部分相关用例进行测试。

  1. 在应用软件环境中,验收测试是项目过程非常重要的一环,也是项目经理需要非常关注的一项工作。

  2. 验收测试与系统测试非常相似,不同的是系统测试是项目组或组织内部的测试,验收测试是用户主导、现场参与、现场环境下的测试。

  3. 验收测试通常由项目组提出测试大纲,定义测试目的、范围、方法、测试用例、预期结果、验收标准等。经用户审核、修改、批准同意后,确定测试时间,进行验收测试。

  4. 用户在完成按测试用例的测试后,在测试记录上逐条确认、签字,最后在测试报告上签字,完成验收测试。

  1. 集成/系统/验收测试的活动

  □ 测试计划和测试用例被评审和批准,并在基线控制下

  □ 按计划执行测试用例

  □ 更新需求跟踪矩阵以确认测试覆盖率

  □ 进行缺陷分析

  □ 完成测试报告等

  2. 集成/系统/验收测试的度量

  □ 成本偏差

  □ 进度偏差

  □ 缺陷数

  □ 生产率

  □ 有效性

  □ 测试覆盖指标等

  举报/反馈

上一篇:香椿的繁殖方法
下一篇:初中生升学深造比例超过70%!职教高考:另一条赛道更能上大学!

最近更新成人教育