集成测试详解
的有关信息介绍如下:在每个模块完成单元测试后,需要按照设计时做出的结构图把它们连接起来,进行集成测试。实践证明,一个模块能够单独地工作,并不能保证连接起来也能正常工作。
把单独的软件模块结合在一起作为整体接受测试,其目标是利用已通过单元测试的构件建立设计中描述的程序结构。
集成测试的主要任务:
将各模块连接起来,检查模块相互调用时,数据经过接口是否丢失;
将各个子功能组合起来,检查能否达到预期要求的各项功能;
一个模块的功能是否会对另一个模块的功能产生不利的影响;
全局数据结构是否有问题,会不会被异常修改;
单个模块的误差积累起来,是否被放大,从而达到不可接受的程度。
计划阶段:
依据需求规格说明书、概要设计文档和开发计划,拟定软件集成测试计划;
设计阶段:
依据被测对象的结构、待集成模块、接口、集成测试策略、测试工具等进行分析,拟定集成测试设计方案。
实现阶段:
主要进行集成测试用例设计和集成测试代码设计
执行阶段:
执行测试,生成测试报告
所有的公共接口都要被测试到;
关键模块必须进行充分的测试;
集成测试应该按一定的层次进行;
集成测试的策略应该综合考虑质量、进度、成本;
当测试计划中的结束标准满足时,集成测试结束;
集成测试根据集成测试的计划和方案进行,防止测试的随意性;
项目管理者保证测试用例经过审查;
测试的执行结果应该如实的被记录。
技术:
黑盒测试技术为主、白盒测试技术为辅(灰盒测试技术)
步骤:
与集成测试策略相关
集成测试策略
基于功能分解的集成测试;
非增量式的:
瞬时集成;
增量式的:
自顶向下、自底向上、基干、三明治。。。。;
基于调用图的集成测试;
基于路径的集成测试。
瞬时集成测试策略
又称大爆炸测试、一次性集成。首先对每个模块分别进行模块测试,然后将所有模块集成起来在一起进行测试,最终得到要求的软件系统。
增量式集成测试策略
特点:
将程序分成小的部分进行构造和测试;
优点:
1.错误容易分离和修正;
2.接口容易进行彻底测试;
缺点:
会有额外开销,但能大大减少发现和修正错误的时间。
三种增量集成测试:
自顶向下集成;
自底向上集成;
混合式集成。
自顶向下
自底向上集成测试策略
集成顺序:
从具有最少依赖性的底层原子模块开始,按照由底向上的顺序构造系统并进行集成测试
原子模块->造件(Build)->应用软件系统
自顶向下与自底向上集成测试策略优缺点
基干测试
基干测试(Backbone Integration)结合了自顶向下、自底向上和一次性集成的方法。
步骤:
Step1:用程序桩独立测试上层模块;
Step2:用驱动器独立测试低层模块;
Step3:集成时对中间层进行测试;
注意事项:首先要识别支持应用控制的构件、基干和应用子系统,测试的顺序基于此分析。
三明治集成测试
三明治集成(Sandwich Integration)是基干集成测试的一种相关样式,提倡自顶向下和自底向上的结合,最后的配置在中间汇合。
层次集成
客户/服务器集成
分布服务集成
高频集成
集成测试是一个必要的测试阶段:
从将两个组件集成到一起开始,到所有系统组件在一起运行位置的所有测试活动,都是集成测试阶段的一部分
集成测试是一种测试类型:
集成测试测试组件间的接口
集成测试不应被淡化:
集成测试能减少系统测试阶段的缺陷