集成测试.pptx
《集成测试.pptx》由会员分享,可在线阅读,更多相关《集成测试.pptx(126页珍藏版)》请在咨信网上搜索。
1、w测试过程单元测试集成测试系统测试为什么需要集成测试?问题引入为什么总是集成不起来?主要内容w7.1 7.1 集成测试概述集成测试概述 w7.2 7.2 基于功能分解的集成基于功能分解的集成 w7.3 7.3 基于调用图的集成基于调用图的集成 w7.4 7.4 基于路径的集成基于路径的集成 w7.5 7.5 其他集成测试方法其他集成测试方法 w7.6 7.6 案例案例 w7.7 7.7 本章小结本章小结 7.1集成测试概述w集成测试(Integration test)定义定义:是在单元测试的基础上,将所有模块按照设计要求集成为系统或子系统,并进行测试。测试单元在集成时是否有缺陷,通过测试识别组
2、合单元时出现的问题,也叫组装测试或联合测试。验证程序和概要设计说明的一致性。7.1集成测试概述w集成测试的目标目标:检测系统是否达到需求;对业务流程及数据流的处理是否符合标准;检测系统对业务流处理是否存在逻辑不严谨或者错误;检测需求是否存在不合理的标准及要求。7.1集成测试概述w集成测试的内容内容:具体检测包括功能正确性验证、接口测试、全局数据结构的测试以及计算精度检测等在集成测试时可能出现的错误。7.1集成测试概述w集成测试的方法和策略方法和策略:非增量型测试:先将所有软件模块统一集成后才进行整体测试,也称大棒集成。增量型(渐增式)测试:从一个模块开始,测一次添加一个模块,边组装边测试,以发
3、现与接口相联系的问题。增量型集成测试的实施策略有很多种,如自底向自底向上集成测试、自顶向下集成测试、三明治集成测上集成测试、自顶向下集成测试、三明治集成测试试等。7.1集成测试概述w集成测试的人员组织人员组织:由专门的测试人员负责测试,但开发人员有时也会参与集成测试的设计和执行。集成测试工程师一般都需要参加到产品的概要设计中去,尤其是概要设计的评审。7.1集成测试概述w集成测试的集成测试的过程过程:1 1计划阶段计划阶段 2 2设计阶段设计阶段3 3执行阶段执行阶段4 4评估阶段评估阶段1计划阶段计划阶段 w时间:在概要设计完成评审后大约一个星期;w需要准备集成测试的设计依据文档:需求规格说明
4、书、概要设计文档等。w确定测试范围和测试对象;w准备测试工具和环境,进行人员组织等。w考虑一定的风险及应急计划,外部技术支援的力度和深度以及相关培训安排。w最后以完成集成测试计划书结束,并通过评审。2设计阶段设计阶段w要详细理解集成测试计划阶段准备的需求规格说明书、概要设计以及集成测试计划。w与软件系统的详细设计阶段同时进行。2设计阶段设计阶段w详细分析被测对象结构、集成测试模块、集成测试接口,并根据分析结果确定集成测试策略、测试工集成测试策略、测试工具、集成测试环境具、集成测试环境,以估计和安排集成测试工作量。w根据软件需求、概要设计、集成测试计划来设计集成测试。部分测试用例可能需要进行集成
5、测试代码集成测试代码(Driver(Driver、Stub)Stub)设计设计,部分测试用例需要借助测试工具。w经过设计后,输出集成测试用例、集成测试规程、集成测试用例、集成测试规程、集成测试代码、集成测试脚本集成测试代码、集成测试脚本,最后输出集成测试设计报告,并通过评审。3执行阶段执行阶段w当单元测试已经完成后就可以开始执行集成测试了。w执行过程中,根据前面的设计以及软件需求规格说明书、概要设计、详细设计、代码和单元测试报告,执行所有集成测集成测试用例、回归集成测试用例试用例、回归集成测试用例并记录和撰写集成测试报告。4评估阶段评估阶段w在修复和回归测试的交替和反复中,当达到测试要求后,就
6、进入了评估阶段。w所有测试需要由测试结果评估小组或评估人员对测试结果进行评测、分析,并输出分析结果。7.2 基于功能分解的集成w要求在测试的准备阶段按照概要设计的规格说明,来确定模块之间的功能分层模块之间的功能分层结果结果,明确被测功能模块,并在熟悉被测功能模块功能、接口等特性的基础上进行测试。7.2 基于功能分解的集成w图中,软件系统包含7个功能模块,模块之间存在的层次结构以树型结构来表示:w图7-2-1 程序模块化设计示意图 7.2 基于功能分解的集成w定义从一个模块开始,测一次添加一个模块,边组装边测试,以发现与接口相联系的问题。w集成方式自顶向下集成自底向上集成三明治集成1.自顶向下集
7、成w定义自顶向下集成(Top-down Integration)按照系统层次结构图,以主程序模块为中心,自上而下按照深度优先或者广度优先策略,对各个模块一边组装一边进行测试。在测试过程中,需要设计Stub桩模块来模拟下层模块。w自顶向下集成的两种类型自顶向下集成的两种类型深度优先广度优先ABCDHGJEFIKLMNA、B、E、J、K、C、F、L、G、D、H、M、N、I深度优先:深度优先:A、B、C、D、E、F、G、H、I、J、K、L、M、N广度优先:广度优先:深度优先策略w首先把主控制路径上的模块集成在一起,至于选择哪一条路径作为主控制路径,这带有随意性,可以根据实际问题的特性确定其优先级。w
8、以图7-2-1为例,若选择了最左一条路径,则首先将模块M1、M2和M5集成在一起,再将M6集成起来,然后考虑中间和右边的路径。w图7-2-2 深度优先搜索测试过程 广度优先策略w沿控制层次结构水平地向下移动。w以图7-2-1为例,它首先把M2、M3和M4与主控模块集成在一起,再将M5、M6和其他模块集成起来。w图7-2-3 广度优先搜索测试过程 w自顶向下集成步骤:(1)以主控模块作为测试驱动模块,把对主控模块进行单元测试时引入的所有桩模块用实际模块替代(2)依据所选的集成策略,每次只替代一个桩模块(3)每集成一个模块立即测试一遍自顶向下集成步骤(续)(4)只有每组测试完成后,才着手替换下一个
9、桩模块(5)为避免引入新错误,须不断地进行回归测试从第(2)步开始,循环执行上述步骤,直至整个程序结构构造完毕。举例:ADBECF深度优先深度优先:A、B、E、C、D、F广度优先广度优先:A、B、C、D、E、F自自顶顶向向下下集集成成深度优先A加入加入ES2S2BS3S3EA测试测试 AS2S2S1S1S3S3A加入加入BS2S2BS3S3S4S4加入加入FCBDEAFA加入加入CCBS3S3E加入加入DCBDEAS5S52.自底向上集成w定义自底向上集成(Bottom-up Integration)从系统层次结构图的最底层模块开始进行组装和集成测试的方式。w自底向上集成步骤 从最底层的模块开
10、始组装,组合成一个能够完成某个子功能的构件;编制驱动程序,协调测试用例的输入与输出;测试集成后的构件;使用实际模块代替驱动程序,按程序结构向上组装测试后的构件;重复上面的第二步,直到系统的最顶层模块被加入到系统中为止。2.自底向上集成w以图7-2-4为例,控制力最弱的底层模块有M5M5、M3M3、M6M6,先选择其作为测试对象,三者可以并列进行,分别为它们建立好Driver,然后分别进行集成。w图7-2-4 自底向上的集成测试策事例 w图7-2-5 自底向上的集成测试示例 举例举例:A AC CB BD DF FE EE Ed d1 1C Cd d3 3F Fd d4 4E EB Bd d2
11、2D Dd d5 5F FA AC CB BD DF FE Ew优点可以尽早的验证底层模块的行为。提高了测试效率;对实际被测模块的可测试性要求较少;减少了桩模块的工作量;容易对错误进行定位。自底向上集成w缺点直到最后一个模块加进去之后才能看到整个系统的框架;只有到测试过程的后期才能发现时序问题和资源竞争问题;驱动模块的设计工作量大;不能及时发现高层模块设计上的错误。自底向上集成自底向上集成w适用范围 底层模块接口比较稳定的产品;高层模块接口变更比较频繁的产品;底层模块开发和单元测试工作完成较早的产品。3.三明治集成w定义三明治集成方法(Sandwich Integration)三明治集成是一种
12、混合增殖式测试策略,综合了自顶向下和自底向上两种集成方法的优点。w方法一般对软件结构的上层使用自顶向下结合的方法;对下层使用自底向上结合的方法;3.三明治集成举例w用三明治集成方式如何测试?C CB BD DE EF FA A三明治集成步骤w首先,确定以哪一层为界来决定使用三明治集成策略。我们确定以B模块为界;w其次,对模块B及其所在层下面的各层使用自底向上的集成策略;w再次,对模块B所在层上面的层次使用自顶向下的集成策略;w然后,把模块B所在层各模块同相应的下层集成;w最后,对系统进行整体测试。以图7-2-6(a)为例,在图中共有6个模块,图中以功能分层结构表示,共包括3层。w首先确定测试的
13、中间层,在中心层之上采用自顶向下的集成,而目标层之下采用自底向上的集成,最后,测试在中心层汇合,直接将上下两个部分集成起来进行测试。w本例中第二层为中心层,且中心层参与了自底向上的集成测试,具体的测试过程如图7-2-6(b)所示。w图7-2-6 三明治集成 w优点除了具有自顶向下和自底向上两种集成策略的优点之外,运用一定的技巧,能够减少了桩模块和驱动模块的开发。w缺点在被集成之前,中间层不能尽早得到充分的测试。3.三明治集成w基于功能分解的缺点之一是以功能分解树为基础,这需要对需求、概要设计进行深入理解,并总结出功能模块间的分层结构关系图,但并不是所有的软件系统的功能层次关系都很明确。w如果结
14、合软件程序的内部结构,就可以缓解这类缺陷,基于调用图的集成测试方法就是这样的一种方法。7.3 基于调用图的集成7.3 基于调用图的集成w调用图是一种有向图,它反映了程序中调用图是一种有向图,它反映了程序中模块之间的调用关系。模块之间的调用关系。w基于调用图的集成测试就是根据其调用关系来设计和实施的,具体的做法有:成对集成和相邻集成。1、成对集成w成对集成的思想就是免除桩/驱动器开发工作,使用实际代码来代替桩/驱动器。w成对集成的方法就是对应调用图的每一个边对应调用图的每一个边建立并执行一个集成测试会话建立并执行一个集成测试会话。w图7-3-1 成对集成示意图 1、成对集成w图中表示出了15个模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 集成 测试
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。