软件测试教程(华为培训专用)-第5章讲述.ppt
文本预览下载声明
第5章 集成测试
5.1 集成测试概述
5.1.1 集成测试的概念
集成(Integration)是指把多个单元组合起来形成更大的单元。
集成测试(Integration Testing)是在假定各个软件单元已经通过了单元测试的前提下,检查各个软件单元之间的相互接口是否正确。
5.1 集成测试概述
集成测试主要关注下列问题:
(1)模块间的数据传递是否正确?
(2)一个模块的功能是否会对另一个模块的功能产生错误的影响?
(3)全局数据结构是否有问题,会不会被异常修改?
(4)块组合起来的功能能否满足要求?
(5)集成后,各个模块的累积误差是否会扩大,是否达到不可接受的程度?
5.1 集成测试概述
5.1 集成测试概述
5.1 集成测试概述
5.1.2 集成测试与系统测试的区别
(1)测试对象。
(2)测试时间。
(3)测试方法。
(4)测试内容。
(5)测试目的。
(6)测试角度。
5.1 集成测试概述
5.1.3 集成测试与开发的关系
集成测试是和软件开发过程中的概要设计阶段相对应的,而在软件概要设计中关于整个系统的体系结构就是集成测试用例输入的基础。
5.1 集成测试概述
5.1.4 集成测试的层次与原则
1.集成测试的层次
对于传统软件来说,按集成粒度不同,可以把集成测试分为3个层次,即:
(1)模块间集成测试
(2)子系统内集成测试
(3)子系统间集成测试
对于面向对象的应用系统来说,按集成粒度不同,可以把集成测试分为2个层次:
(1)类内集成测试
(2)类间集成测试
5.1 集成测试概述
5.1.4 集成测试的层次与原则
2.集成测试的原则
(1)所有公共接口必须被测试到;
(2)关键模块必须进行充分测试;
(3)集成测试应当按一定层次进行;
(4)集成测试策略选择应当综合考虑质量、成本和进度三者之间的关系;
(5)集成测试应当尽早开始,并以概要设计为基础;
(6)在模块和接口的划分上,测试人员应该和开发人员进行充分沟通;
(7)当测试计划中的结束标准满足时,集成测试才能结束;
(8)当接口发生修改时,涉及到的相关接口都必须进行回归测试;
(9)集成测试应根据集成测试计划和方案进行,不能随意测试;
(10)项目管理者应保证测试用例经过审核;
(11)测试执行结果应当如实的记录。
5.2 集成测试策略
5.2.1 非渐增式集成
非渐增式集成方法首先对每个子模块进行测试(即单元测试),然后将所有模块全部集成起来一次性进行集成测试。
【例5.1】 对如图5.3所示的程序,采用非渐增式集成方法进行集成测试。
5.2 集成测试策略
5.2 集成测试策略
5.2.2 渐增式集成
渐增式集成与“一步到位”的非渐增式集成相反,它把程序划分成小段来构造和测试,在这个过程中比较容易定位和改正错误;对接口可以进行更彻底的测试;可以使用系统化的测试方法。因此。目前在进行集成测试时普遍采用渐增式集成方法。
当使用渐增方式把模块结合到程序中去时,有自顶向下和自底向上两种集成策略。
5.2 集成测试策略
1.自顶向下集成
自顶向下集成方法是一个日益为人们广泛采用的测试和组装软件的途径。从主控制模块开始,沿着程序的控制层次向下移动,逐渐把各个模块结合起来。在把附属于(及最终附属于)主控制模块的那些模块组装到程序结构中去,或者使用深度优先的策略,或者使用宽度优先的策略。
【例5.2】对如图5.3所示的程序,采用自顶向下集成方法,按照深度优先方式进行集成测试。
5.2 集成测试策略
5.2 集成测试策略
2.自底向上集成
自底向上测试从“原子”模块(即在软件结构最底层的模块)开始组装和测试。因为是从底部向上结合模块,总能得到所需的下层模块处理功能,所以不需要桩模块。
【例5.3】对如图5.3所示的程序,采用自底向上集成方法,按照深度优先方式进行集成测试。
5.2 集成测试策略
5.2 集成测试策略
5.2.3 三明治集成
三明治集成是一种混合增量式测试策略,综合了自顶向下和自底向上两种集成方法的优点。这种方法桩模块和驱动模块的开发工作都比较小,不过代价是在一定程度上增加了定位
显示全部