Page 242 - 数码世界6月整本
P. 242

技术交流






                                                                                                             软件集成测试解析


                                                                                                                          陆春


                                                                            摘要:我国的软件测试技术正在快速发展。软件测试在软件开发过程中起非常重要的作用。软件测试中的集成测试是为了保证每一功能
                                                                            模块组装在一起时可以很好地协调工作,从而保证整个系统良好的性能。文章主要对软件集成测试的原理和重要性、传统软件的集成测
                                                                            试和面向对象软件的集成测试三方面进行阐述,旨在为软件集成测试的完善提供丰富的理论依据。





                                                                               按软件工程开发周期可将软件测试过程分为单元测                           集成测试具有以下特点:容易测试特殊的处理流程;从
                                                                            试、集成测试、确认测试和系统测试4个部分。集成测                            程序结构出发,目的性、针对性更强;高效率发现问题,
                                                                            试是将已经过单元测试的软件模块集成、组装在一起的                            定位准确、迅速。
                                                                            过程。即使所有的软件模块都能通过单元测试,也不能
                                                                                                                                2 传统软件的集成测试
                                                                            保证它们集成在一起就不会发生错误,所以在软件集成
                                                                            过程中必须进行集成测试。传统软件(结构化程序软件)                           2. 1 基于分解的集成测试
                                                                            和面向对象软件在开发过程中有很大区别,它们的测试                                基于分解的集成测试是基于系统测试功能分解的集
                                                                            方法也有很大的差异。明确两类不同的集成测试原理和                            成测试,包括非渐增式集成测试和渐增式集成测试两种
                                                                            种类,有助于进一步了解软件集成测试理论,对软件集                            方式。非渐增式集成测试这种集成测试采用一步到位的
                                                                            成测试工作的顺利进行也具有重要意义。                                  方法来构造测试:对所有模块进行单元测试后,按程序

                                                                            1 软件集成测试的原理和重要性                                     结构图将各模块联接起来,进行整体测试。其缺点是发
                                                                                                                                现错误却难以诊断定位,测试时可能发现一大堆错误,
                                                                            1. 1 集成测试原理                                         定位和纠正每个错误非常困难,并且在改正一个错误的
                                                                               集成测试是在单元测试的基础上,对模块按照设计                           同时可能会引入新错误,新旧错误混杂,难以断定出错
                                                                            要求组装成子系统或系统而进行的测试,其目的是确保                            的原因和位置。
                                                                            各单元组合在一起后能够按既定方案协作运行,并确保                                渐增式集成测试渐增式集成测试从一个模块开始,
                                                                            正确的增量行为。它所测试的内容包括单元间的接口以                            边组装边测试,以发现与接口相联系的问题。渐增式集
                                                                            及集成后的功能。集成测试的需求主要来自集成构件计                            成方式包括自顶向下集成、自底向上集成、混合集成3
                                                                            划和设计模型,着重于集成版本的外部接口行为,因此                            种。自顶向下集成就是从最具控制力的模块开始,按控
                                                                            测试需求须具有可测评性和可观测性。                                   制层次减弱的顺序向系统中增加模块,直至实现整个系

                                                                            1. 2 集成测试的重要性                                       统;自底向上集成是从控制力最弱的模块开始,按控制
                                                                                                                                层次增强的顺序向系统中增加模块,直至实现整个系统;
                                                                               单元测试仅能保证模块的局部正确性。实践表明,
                                                                                                                                混合集成是自顶向下和自底向上集成的组合。
                                                                            软件的一些模块虽然能够单独正常工作,但是组装连接
                                                                            后却不一定正常运行。程序在局部反映不出来的问题,                            2. 2 基于调用图的集成测试
                                                                            却在全局情况下有可能暴露,继而影响软件的正常功能。                               基于分解集成测试的缺点之一是以功能分解树为基
                                                                            可能的原因有以下几方面:计算的误差累计达到一定程                            础。如果改用调用图,则可以减缓这种缺陷,并且也向
                                                                            度;几个子功能组合后不能实现预计的主功能;模块相                            结构性测试方法发展,同时免除了桩/驱动器开发工作
                                                                            互调用时引入了新的问题;全局数据结构出现错误。因                            量。基于调用图的集成包括成对集成和相邻集成。
                                                                            此,在完成单元测试后,需要按照程序结构图进行集成                            2.2.1 成对集成
                                                                            测试。                                                     成对集成的思想是免除桩/驱动器开发。成对集
                                                                               系统测试一般在整个系统完成之后进行,错误难以                           成的最终结果是对调用图中的每条边有一个集成测试
                                                                            定位,所以往往无法替代集成测试。与系统测试相比较,                           会话。



 122...                                                                                                                                                                   ...123
   237   238   239   240   241   242   243   244   245   246   247