测试和调试
测试和调试是不同的过程,通常交叉进行。 检验和有效性验证的目的是确定系统中存在缺陷; 调试考虑的是定位和修改缺陷。 5.5 V & V 规划(理解)
仔细的规划能够使程序检查和测试的工作得到更多的回报。 V & V过程的规划应该从开发过程的早期就开始。 V & V规划应该明确的说明静态检查与测试任务与分工。 测试规划主要是制定测试过程标准,而不是描述测试本身。 系统开发的 V 模型
5.7 软件测试阶段活动
第 21 页 共 21 页
测试阶段 组件测试
测试单个的程序组件;
通常由程序开发者完成(除了要求特别高的系统); 这个阶段的测试大多依靠测试者的经验。 系统测试
测试由组件整合成的子系统和系统; 有专门的测试团队进行测试; 测试要依据需求规格说明进行。 5.8 集成测试
集成测试包括把组件集成为系统和对合成的系统进行 测试,以发现组件集成过程带来的问题,集成方式可以分 为: 自顶向下集成
从主控模块开始,沿着控制层次结构逐步向下,利用深度优先或广度优先的方式将从属于主控模块的其他模块集成到系统结构中。 自底向上集成
从原子模块开始,从底层把模块逐步向上集成为更大规模的子系统和系统。
第 22 页 共 22 页
增量集成测试
为了简化测试中错误定位的问题,可以采用增量集成的方法。
5.9 测试用例设计
测试用例的基本构成可以包括:设计的输入、期望的输出、测试环境和测试对象的描述。 设计测试用例是系统测试与组件测试的关键工作,主要是通过设计输入数据与预计的输出来测试系统。
测试用例设计的目的是建立一组测试用例集合,用尽可能少的测试代价有效的发现系统缺陷并证明系统能够满足需求。 设计测试用例的常用方法: 划分测试与边界值分析; 结构化测试(白盒测试)。
5.10 等价划分测试(概念+综合测试)
第 23 页 共 23 页
等价划分测试是测试用例设计的一种方法。设计测试用例时,可以按特征把数据输入域划分成若干等价类,等价类中的每个数据应该以同样的方式得到处理,因此对于揭露程序中的错误是等效的。这样,就可以选取少量有代表性的输入数据作为测试数据,以期用较小的代价暴露较多的程序错误。 5.11 结构化测试
结构化测试是根据软件的结构知识导出测试用例的测试方法。 又叫做“白盒测试法”。
对组件中所用的算法结构的理解可以帮助我们找出更多的测试用例。 黑盒测试与白盒测试
黑盒测试又叫做功能测试,测试者只关心系统的功能而不关心软件的实现。也就是说测试者不必了解有关系统的任何细节,只把系统看成是一个能够处理输入,产生输出的“黑盒子”,仅从功能的角度设计测试用例。
白盒测试又叫做结构测试,是一种根据软件的结构知识导出测试用例的设计方法。测试者把被测试组件看成是一个打开的“白盒子”,组件的内部结构对测试者是透明的,通过对所用算法结构的分析设计测试用例。 结构化测试的目标 目标:
(1)保证一个模块中的所有独立路径至少被执行一次; (2)对所有的逻辑值均需测试真和假;
(3)在上下边界以及可操作的范围内执行所有循环;
(4)检验内部结构以确保其有效性。白盒测试能够比黑盒测试发现更细小的缺陷。 5.12 逻辑覆盖法
第 24 页 共 24 页
相关推荐: