集成测试
- 集成测试概述
- 集成测试步骤
-
- 计划阶段
- 设计阶段
- 实施阶段
- 执行阶段
- 集成测试策略
-
- 非增量式集成策略
- 增量式集成策略
-
- 自顶向下的集成策略
- 自底向上的集成策略
- 混合增量式集成策略
集成测试概述
集成测试的定义
集成测试又称组装测试,是在单元测试的基础上,将所有模块按照设计要求组装成子系统或系统进行的测试活动。
集成测试的目的
确保各单元组合在一起后能够按既定意图协作运行,并确保增量的行为正确。
集成测试的测试内容
- 在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失
- 各个子功能组合起来,能否达到预期要求的父功能
- 一个模块的功能是否会对另一个模块的功能产生不利的影响
- 全局数据结构是否有问题
- 单个模块的误差积累起来,是否会放大,从而达到不可接受的程度
集成测试的方法
通常使用黑盒测试方法
集成测试的原则
- 要测试所有的公共接口,尤其是那些与系统相关联的外部接口,测试的重点是要检测数据的交换,传递和控制管理过程,还包括处理的次数。
- 必须对关键模块进行充分测试。
系统中关键模块应具有一个或多个以下特性:
- 和多个软件需求有关,或与关键功能有关
- 处于程序控制结构的顶层
- 本身是复杂或者容易出错的
- 含有确定性的性能需求
- 被频繁使用的模块
- 集成测试应当按一定的层次进行
- 集成测试的策略选择应当综合考虑质量,成本和进度之间的关系
- 集成测试应当尽早开始,并以总体设计为基础
- 在模块与接口的划分上,测试人员应当和开发人员进行充分的沟通
- 测试执行结果应当被如实记录
集成测试步骤
根据IEEE标准集成测试划分为5个阶段:计划阶段,设计阶段,实施阶段,执行阶段和评估阶段
计划阶段
时间安排 :应在概要设计阶段完成
输入 :《需求规格说明书》,《概要设计文档》和《产品开发计划书》
入口条件:概要设计文档已经通过评审
活动步骤
- 确定被测试对象和测试范围
- 评估集成测试被测试对象的数量及难度,即工作量
- 确定角色分工和划分工作任务
- 标识出测试各阶段的时间、任务、约束等条件
- 考虑一定的风险分析及应急计划
- 考虑和准备集成测试需要的测试工具、测试仪器、环境等资源
- 考虑外部技术支援的力度和深度,以及相关培训安排
- 定义测试完成标准
输出 :《集成测试计划》
出口条件 :集成测试计划通过概要设计阶段基线评审
设计阶段
时间安排 :详细设计阶段开始
输入 :《需求规格说明书》,《概要设计文档》和《集成测试计划》
入口条件:概要设计基线通过评审
活动步骤
- 被测对象结构分析
- 集成测试模块分析
- 集成测试接口分析
- 集成测试策略分析
- 集成测试工具分析
- 集成测试环境分析
- 集成测试工作量估计和安排
输出 :集成测试设计方案
出口条件 :集成测试设计通过详细设计基线评审
实施阶段
时间安排 :在编码阶段开始后进行
输入 :需求规格说明书,概要设计,集成测试计划和集成测试设计
入口条件:详细设计阶段
活动步骤
- 集成测试用例设计
- 集成测试规程设计
- 集成测试代码设计(如果需要)
- 集成测试脚本(如果需要)
- 集成测试工具(如果需要)
输出 :集成测试设计方案
出口条件 :集成测试设计通过详细设计基线评审
执行阶段
时间安排 :单元测试已经完成后就可以执行集成测试了
输入 :需求规格说明书,概要设计,集成测试计划,集成测试设计,集成测试用例,集成测试规程,集成测试代码(如果有),集成测试脚本,集成测试工具,详细设计,代码和单元测试 告
入口条件:单元测试阶段已经通过基线化评审
活动步骤
- 执行集成测试用例
- 回归集成测试用例
- 撰写集成测试 告
输出 :集成测试 告
出口条件 :集成测试 告通过集成测试阶段基线审评。
集成测试策略
集成策略是在测试对象分析的基础上,描述软件模块集成(组装)的方式和方法。集成策略可分为非增量式集成和增量式集成两大类,增量式集成又可按照实施的次序不同分为:自顶向下的增量式集成测试;自底向上的增量式集成测试和混合增量式集成测试(“三明治”集成)
非增量式集成策略
非增量式集成测试,又叫大爆炸式集成(Big Bang),采用一步到位的方法来构造测试对所有模块进行个别的单元测试后,按照程序结构图将各模块连接起来,把连接后的程序当作一个整体进行测试。
优点
- 方法简单
- 允许多测试人员同时并行工作,人力物力资源利用率较高
缺点
- 必须为每个模块准备相应的驱动模块和桩模块,测试成本较高
- 一旦集成后包含多种错误,难以纠正
适应范围 :一个维护型或被测试系统较小
增量式集成策略
增量式集成方式又被称为渐增式组装,它的集成是逐步实现的。逐次将未曾集成测试的模块和已经集成测试的模块(或子系统)结合成程序包,再将这些模块集成为较大系统,在集成的过程中边连接边测试,以发现连接过程中产生的问题。
自顶向下的集成策略
按照结构图自上而下进行的,即模块集成的顺序是首先集成主控模块(主程序),然后依照控制层次结构向下进行集成,逐步将各个模块集成到已经集成的整体中。向下集成的过程中,可以按照深度优先和广度优先的顺序集成。
深度优先组装方式
- 不需要设计驱动程序
- 能尽早地对程序的主要控制和决策机制进行检验
- 能在早期发现上层模块的接口错误
缺点
- 桩的开发量大
- 底层验证被推迟
- 底层组件测试不充分
适用范围
- 产品控制结构比较清晰和稳定
- 高层接口变化较小
- 底层接口未定义或经常可能被修改
- 产品控制组件具有较大的技术风险,需要尽早被验证
- 希望尽早能看到产品的系统功能行为
自底向上的集成策略
从具有最小依赖性的底层组件开始,按照依赖关系树的结构,逐层向上集成,以检验系统的稳定性。
这是最常用的集成策略
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!