本站文章除标题中注明“原”以外,其他均来自网络或书籍,如果我的引用侵犯了您的权力,请与我联系,我将及时处理;如果任何人想转载这些文章,则请保留原始的出处信息,或者直接与原作者联系。
综合测试的基本方法
上一篇 /
下一篇 2007-01-21 21:03:28
/ 个人分类:测试理论
51Testing软件测试网*Y2Y%GMO
lq'LP时常有这样的情况发生,每个模块都能单独工作,但这些模块集成在一起之后却不能正常工作。主要原因是,模块相互调用时接口会引入许多新问题。例如,数据经过接口可能丢失;一个模块对另一模块可能造成不应有的影响;几个子功能组合起来不能实现主功能;误差不断积累达到不可接受的程度;全局数据结构出现错误,等等。综合测试是组装软件的系统测试技术,按设计要求把通过单元测试的各个模块组装在一起之后,进行综合测试以便发现与接口有关的各种错误。51Testing软件测试网!F8uC8b{']%IG]
51Testing软件测试网kE"I/c3l
dyV?t
某设计人员习惯于把所有模块按设计要求一次全部组装起来,然后进行整体测试,这称为非增量式集成。这种方法容易出现混乱。因为测试时可能发现一大堆错误,为每个错误定位和纠正非常困难,并且在改正一个错误的同时又可能引入新的错误,新旧错误混杂,更难断定出错的原因和位置。与之相反的是增量式集成方法,程序一段一段地扩展,测试的范围一步一步地增大,错误易于定位和纠正,界面的测试亦可做到完全彻底。下面讨论两种增量式集成方法。51Testing软件测试网AMO?F@u&Q
51Testing软件测试网5m PO{YN0E
51Testing软件测试网#_d]]]r
1 自顶向下集成
e([y`L1V;j#[F0
\!m7{R%MM0
3Jp+w,_:D/@]a0 自顶向下集成是构造程序结构的一种增量式方式,它从主控模块开始,按照软件的控制层次结构,以深度优先或广度优先的策略,逐步把各个模块集成在一起。深度优先策略首先是把主控制路径上的模块集成在一起,至于选择哪一条路径作为主控制路径,这多少带有随意性,一般根据问题的特性确定。以下图为例,若选择了最左一条路径,首先将模块M1,M2,M5和M8集成在一起,再将M6集成起来,然后考虑中间和右边的路径。广度优先策略则不然,它沿控制层次结构水平地向下移动。仍以下图为例,它首先把M2、M3和M4与主控模块集成在一起,再将M5和M6 和其他模块集资集成起来。51Testing软件测试网2n,y"xU(G.|Z
U7}3jW:YR\%mduP051Testing软件测试网)kd$a ZT N
}5Tc
自顶向下综合测试的具体步骤为:
&O,[H)R*xFG0 1 以主控模块作为测试驱动模块,把对主控模块进行单元测试时引入的所有桩模块用实际模块替代;51Testing软件测试网:Noa,J
m0g\j
2 依据所选的集成策略(深度优先或广度优先),每次只替代一个桩模块;