




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、集成测试课件第第5章章 集成测试集成测试5.1 集成测试概述集成测试概述5.1.1 集成测试的概念 集成(Integration)是指把多个单元组合起来形成更大的单元。 集成测试(Integration Testing)是在假定各个软件单元已经通过了单元测试的前提下,检查各个软件单元之间的相互接口是否正确。 集成测试课件软件测试过程模块中有无故障发现与接口有关的模块之间的问题增量式集成测试法是否满足软件需求结论性评价证明系统性能独立的测试机构向用户表明系统可以像用户预的那样工作集成测试课件5.1 集成测试概述集成测试概述 集成测试主要关注下列问题: (1)模块间的数据传递是否正确? (2)一个
2、模块的功能是否会对另一个模块的功能产生错误的影响? (3)全局数据结构是否有问题,会不会被异常修改? (4)块组合起来的功能能否满足要求? (5)集成后,各个模块的累积误差是否会扩大,是否达到不可接受的程度? 集成测试课件5.1 集成测试概述集成测试概述 需求分析 概要设计 详细设计 编码 单元测试 集成测试 系统测试 需求分析 概要设计 详细设计 编码 单元测试 集成测试 系统测试 图 5.1 软件开发的 V 模型 集成测试课件5.1 集成测试概述集成测试概述2/8原则模块划分遵循的几个原则:1)本次测试希望测试哪个模块。2)把与该模块最紧密的模块集成在一起。3)考虑划分后的外围模块,分析外
3、围模块和被集成模块之间的信息流是否容易模拟和控制。集成测试课件5.1 集成测试概述集成测试概述 5.1.2 集成测试与系统测试的区别集成测试与系统测试的区别 (1)测试对象。 (2)测试时间。 (3)测试方法。 (4)测试内容。 (5)测试目的。 (6)测试角度。 集成测试课件5.1 集成测试概述集成测试概述 5.1.3 集成测试与开发的关系集成测试与开发的关系 集成测试是和软件开发过程中的概要设计阶段相对应的,而在软件概要设计中关于整个系统的体系结构就是集成测试用例输入的基础。 集成测试课件5.1 集成测试概述集成测试概述 5.1.4 集成测试的层次与原则集成测试的层次与原则 1集成测试的层
4、次集成测试的层次 对于传统软件来说,按集成粒度不同,可以把集成测试分为3个层次,即: (1)模块间集成测试 (2)子系统内集成测试 (3)子系统间集成测试 对于面向对象的应用系统来说,按集成粒度不同,可以把集成测试分为2个层次: (1)类内集成测试 (2)类间集成测试 集成测试课件5.1 集成测试概述集成测试概述 5.1.4 集成测试的层次与原则集成测试的层次与原则 2集成测试的原则集成测试的原则 (1)所有公共接口必须被测试到; (2)关键模块必须进行充分测试; (3)集成测试应当按一定层次进行; (4)集成测试策略选择应当综合考虑质量、成本和进度三者之间的关系; (5)集成测试应当尽早开始
5、,并以概要设计为基础; (6)在模块和接口的划分上,测试人员应该和开发人员进行充分沟通; (7)当测试计划中的结束标准满足时,集成测试才能结束; (8)当接口发生修改时,涉及到的相关接口都必须进行回归测试; (9)集成测试应根据集成测试计划和方案进行,不能随意测试; (10)项目管理者应保证测试用例经过审核; (11)测试执行结果应当如实的记录。 集成测试课件5.2 集成测试策略集成测试策略n驱动程序驱动程序/驱动模块驱动模块(driver),用以模拟被测模块的上级模块。驱动模块在集成测试中接受测试数据,把相关的数据传送给被测模块,启动被测模块,并打印出相应的结果。n桩程序桩程序/桩模块桩模块
6、(stub),),也有人称为存根程序,用以模拟被测模块工作过程中所调用的模块。桩模块由被测模块调用,它们一般只进行很少的数据处理,例如打印入口和返回,以便于检验被测模块与其下级模块的接口集成测试课件5.2 集成测试策略集成测试策略 5.2.1 非渐增式集成非渐增式集成 非渐增式集成方法首先对每个子模块进行测试(即单元测试),然后将所有模块全部集成起来一次性进行集成测试。 【例5.1】 对如图5.3所示的程序,采用非渐增式集成方法进行集成测试。ABCDEFG 图5.3 程序结构图集成测试课件5.2 集成测试策略集成测试策略 测试A测试B测试C测试D测试E测试F测试G测试(A、B、CD、E、F、G
7、) 图5.4 非渐增式集成集成测试课件5.2 集成测试策略集成测试策略 5.2.2 渐增式集成渐增式集成 渐增式集成与“一步到位”的非渐增式集成相反,它把程序划分成小段来构造和测试,在这个过程中比较容易定位和改正错误;对接口可以进行更彻底的测试;可以使用系统化的测试方法。因此。目前在进行集成测试时普遍采用渐增式集成方法。 当使用渐增方式把模块结合到程序中去时,有自顶向下和自底向上两种集成策略。 集成测试课件5.2 集成测试策略集成测试策略 1自顶向下集成自顶向下集成 自顶向下集成方法是一个日益为人们广泛采用的测试和组装软件的途径。从主控制模块开始,沿着程序的控制层次向下移动,逐渐把各个模块结合
8、起来。在把附属于(及最终附属于)主控制模块的那些模块组装到程序结构中去,或者使用深度优先的策略,或者使用宽度优先的策略。 【例【例5.2】对如图5.3所示的程序,采用自顶向下集成方法,按照深度优先方式进行集成测试。 集成测试课件5.2 集成测试策略集成测试策略n用以下4个步骤实现自顶向下的结合策略:n1.对主控模块进行测试,测试时用桩模块代替所有直接附属于主控模块的模块;n2.根据选定的结合策略,每次用一个实际模块代换一个桩模块(新结合进来的模块往往又需要新的桩模块)n3.在结合进一个模块的同时进行测试n4.为了保证加入模块没有引进新的错误,可能需要进行回归测试集成测试课件5.2 集成测试策略
9、集成测试策略 ASBSCSD(a)测试AABSCSDSESF (b)测试BABCSDEFSG (e)测试CABCSDEFG (f)测试GABCDEFG(g)测试DABSCSDESF (c)测试EABSCSDEF (d)测试F图5.5 自顶向下集成集成测试课件5.2 集成测试策略集成测试策略n优点:在测试过程早期,对主要的控制点或判决点进行检验。在分解得很好的软件结构中,判决需要在结构层次的较高层确定。如果主要控制点有问题,早点认识到这个问题就变得很重要。如果选用按深度方向组装的方式,可以首先实现和验证一个完整的软件功能,可先对逻辑输入的分支进行组装和测试提供保证。此外,功能可行性较早得到证实,
10、还能够给开发者和用户带来成功的信心。n缺点:在测试较高层模块时,低层处理采用桩模块替代,不能反映真实情况,重要数据不能及时回送到上层模块,因此测试并不充分 集成测试课件5.2 集成测试策略集成测试策略 2自底向上集成自底向上集成 自底向上测试从“原子”模块(即在软件结构最底层的模块)开始组装和测试。因为是从底部向上结合模块,总能得到所需的下层模块处理功能,所以不需要桩模块。 【例【例5.3】对如图5.3所示的程序,采用自底向上集成方法,按照深度优先方式进行集成测试。集成测试课件n用以下4个步骤实现自底向上的结合策略:n1.把低层模块组合成实现某个特定软件子功能的族;n2.写一个驱动程序(用于测
11、试的控制程序),以协调数据的输入和输出;n3.对由模块组成的子功能族进行测试;n4.去掉驱动程序,沿软件结构自下向上移动,把子功能族组合起来形成更大的子功能族。集成测试课件5.2 集成测试策略集成测试策略 测试E测试F测试G测试D测试(A、B、CD、E、F、G) 图5.6 自底向上集成测试(B、E、F)测试(C、G)集成测试课件5.2 集成测试策略集成测试策略n优点:由于驱动模块模拟了所有调用参数,测试模块返回结果不影响驱动模块,生成测试数据也没有困难。如果关键模块是在结构图的底部,自底向上的测试是有优越性的。另外自底向上的组装测试不必开发桩模块。n缺点:当最后一个模块尚未测试时,还没有呈现出
12、被测软件系统的雏形。集成测试课件5.2 集成测试策略集成测试策略 5.2.3 三明治集成三明治集成 三明治集成是一种混合增量式测试策略,综合了自顶向下和自底向上两种集成方法的优点。这种方法桩模块和驱动模块的开发工作都比较小,不过代价是在一定程度上增加了定位缺陷的难度。 【例5.4】对如图5.3所示的程序,以B模块所在层为界,采用三明治集成方法进行集成测试。集成测试课件5.2 集成测试策略集成测试策略 测试E测试F测试G测试A测试(A、B、CD、E、F、G) 图5.7 三明治集成测试(B、E、F)测试(C、G)集成测试课件5.3 集成测试用例设计集成测试用例设计 1为系统运行设计用例为系统运行设
13、计用例 可使用的主要测试分析技术有: (1)等价类划分。 (2)边界值分析。 (3)基于决策表的测试。 集成测试课件5.3 集成测试用例设计集成测试用例设计 2为正向测试设计用例为正向测试设计用例假设在严格的软件质量控制下,软件各个模块的接口设计和模块功假设在严格的软件质量控制下,软件各个模块的接口设计和模块功能设计完全正确无误并且满足要求,那么作为正向集成测试的一个能设计完全正确无误并且满足要求,那么作为正向集成测试的一个重点重点就是就是验证这些集成后的模块是否按照设计实现了预期功能验证这些集成后的模块是否按照设计实现了预期功能。可是用如下几种主要测试分析技术: (1)输入域测试。 (2)输
14、出域测试。 (3)等价类划分。 (4)状态转换测试。 (5)规范导出法。 集成测试课件5.3 集成测试用例设计集成测试用例设计 3为逆向测试设计用例为逆向测试设计用例集成测试中的逆向测试包括分析被测接口是否实现了需求规格没有描述的功能,检查规格说明中可能出现的接口遗漏,或者判断接口定义是否有错误,以及可能出现的接口异常错误等。 可使用的主要测试分析技术有: (1)错误猜测法。 (2)基于风险的测试。 (3)基于故障的测试。 (4)边界值分析。 (5)特殊值测试。 (6)状态转换测试。 集成测试课件5.3 集成测试用例设计集成测试用例设计 4为满足特殊需求设计用例 5为覆盖设计用例 可使用的主要测试分析技术有: (1)功能覆盖分析。 (2)接口覆盖分析。 集成测试课件5.4 集成测试过程集成测试过程 一个测试从开发到执行遵循一个过程,不同的组织对这个过程的定义会有所不同。根据集成测试不同阶段的任务,可以把集成测试划分为5个阶段:计划阶段、设计阶段、实施阶段、执行阶段、评估阶段。 制定集成测试计划设计集成测试实施集成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 六一潮流活动方案
- 六一爆米花活动方案
- 六一社工活动方案
- 六一节活动食物活动方案
- 六一酒店活动策划方案
- 六五世界环境日活动方案
- 六年级科学实验活动方案
- 民航试题及答案
- 评论试题及答案
- 医古文考试试题及答案
- 江苏省南师附中2024届高一数学第二学期期末教学质量检测试题含解析
- 教师礼仪与沟通技巧(山东联盟)智慧树知到期末考试答案章节答案2024年潍坊学院
- 莎士比亚戏剧赏析智慧树知到期末考试答案章节答案2024年北京师范大学
- (正式版)SHT 3046-2024 石油化工立式圆筒形钢制焊接储罐设计规范
- 2023年山东济南市初中学业水平考试地理试卷真题(答案详解)
- 国开专科《建筑制图基础》形考作业1-4试题及答案
- GA/T 2015-2023芬太尼类药物专用智能柜通用技术规范
- 志愿服务证明(多模板)
- 《销售员的角色定位》课件
- 阿森斯失眠评定量表2
- 劳保鞋管理制度
评论
0/150
提交评论