测试阶段之集成测试

Posted 软件测试大师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了测试阶段之集成测试相关的知识,希望对你有一定的参考价值。



测试阶段之集成测试
集成测试

测试阶段之集成测试



(1)定义:

 集成测试也叫组装测试、联合测试、子系统测试或部件测试。集成测试是在单元测试的基础上,将所有模块按照概要设计要求组装成为子系统或系统。 

  

(2)集成测试的关注点:  

  1.在把各个模块连接起来时,穿越模块接口的数据是否会丢失。  

  2.各个子功能组合起来,能否达到预期的要求的父功能。  

   3.一个模块的功能是否会对另一个模块的功能产生不利的影响。  

   4.全局数据结构是否有问题,会不会被异常修改。  

   5.单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。   

 (3)集成测试的模式:     

     ① 非增殖式集成方式

先分别测试每个模块,再把所有模块按设计要求一次全部组装起来所要的系统,然后进行整体测试。使用这种方式可能发现一大堆错误,但为每个错误定位和纠正非常困难,并且在改正一个错误的同时又可能引入新的错误,新旧错误混杂,更难断定出错的原因和位置。  

     ② 增殖式集成方式

又称渐增式集成方式。首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统,在组装的过程中边连接边测试,以发现连接过程中产生的问题。最后通过增殖逐步组装成为要求的软件系统。 常用的增殖方法有:自顶向下集成测试、自底向上集成测试、核心集成测试等。  

自顶向下的增殖方式:将模块按系统程序结构,沿控制层次自顶向下进行集成。由于这种增殖方式在测试过程中较早地验证了主要的控制和判断点。在一个功能划分合理的程序结构中,判断常出现在较高的层次,较早就能遇到。如果主要控制有问题,尽早发现它能够减少以后的返工。  

自底向上的增殖方式:从程序结构的最底层模块开始组装和测试。因为模块是自底向上进行组装,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)已经组装并测试完成,所以不再需要桩模块。在模块的测试过程中需要从子模块得到的信息可以直接运行子模块得到。    

自顶向下增殖的方式和自底向上增殖的方式各有优缺点。自顶向下增殖方式的缺点是需要建立桩模块。要使桩模块能够模拟实际子模块的功能将是十分困难的。同时涉及复杂算法和真正输入/输出的模块一般在底层,它们是最容易出问题的模块,到组装和测试的后期才遇到这些模块,一旦发现问题,导致过多的回归测试。

而自顶向下增殖方式的优点是能够较早地发现在主要控制方面的问题。自底向上增殖方式的缺点是“程序一直未能做为一个实体存在,直到最后一个模块加上去后才形成一个实体”。就是说,在自底向上组装和测试的过程中,对主要的控制直到最后才接触到。但这种方式的优点是不需要桩模块,而建立驱动模块一般比建立桩模块容易,同时由于涉及到复杂算法和真正输入/输出的模块最先得到组装和测试,可以把最容易出问题的部分在早期解决。此外自底向上增殖的方式可以实施多个模块的并行测试。

  核心集成测试:核心系统先行集成测试法的思想是先对核心软件部件进行集成测试,在测试通过的基础上再按各外围软件部件的重要程度逐个集成到核心系统中。每次加入一个外围软件部件都产生一个产品基线,直至最后形成稳定的软件产品。核心系统先行集成测试法对应的集成过程是一个逐渐趋于闭合的螺旋形曲线,代表产品逐步定型的过程。  

③ 混合增殖式测试

就是把模块按系统程序结构,沿控制层次自顶向下进行集成和把按程序模块结构的最低层的模块开始集成和测试混合使用。




以上是关于测试阶段之集成测试的主要内容,如果未能解决你的问题,请参考以下文章

python之单元测试

为什么集成测试被人瞧不起?我不理解还是?

HadoopHiveHBase数据集成阶段测试

测试环境建设之路--part 1(集成测试环境)

Flask之单元测试

测试基础2