1、对构件测试方法的分析

  目前,对构件的测试主要是通过以下几个方法:

  (1)基于构件使用规范说明的测试。以下方法都与构件开发方有着一定联系,本方法按照构件运用方应用环境与规范给予的数据当作测试用例,只局限于黑盒测试中来使用。

  (2)内置测试。对于构件开发方,他们把有着可执行性的测试用例内置于构件内,同时当作构件的常用功能,在构件集成于实际应用环境的情况下,对其中测试用例进行运行,进而进行集成测试;

  (3)元数据。针对在集成测试的时候,构件信息缺乏等一些问题,构件开发方将关于构件的基本信息通过元数据这一合理形式,给予构件测试或者使用方,确保测试顺利地实施,提升构件的可测试性是它的核心内容;

  (4)可测试体系结构。由构件开发方会提供与构件相配套的可测试体系,这样构件使用方在实施测试的情况下,能对测试用例进行直接执行,和上述各个方法相比,不同的是,该测试信息通过规范的形式附加于构件之上,当运行的时候,没有占用内存。

  (5)证明策略。一般情况下,由于构件证明不同的承担方,构件证明主要包括以下几类:首先是构件使用方构件证明,其次是第三方构件证明,后为构件开发方构件证明。

  2、构件测试技术中存在的一些主要问题

  对于构件集成测试,很难对其实施,主要有两方面的原因:异构性的存在以及相关信息的缺少。针对异构性,其表现为:同一个构件处于相同规范下,具有不相同的实现方法;不相同的构件能使用不同平台的不同程序语言进行实现;由于构件使用方与开发方两方很少进行交换信息,便导致了信息缺乏,构件开发方主要对开发构件的应用环境没有足够了解,所以,它进行的构件测试只可以面对假设的应用环境,但是实际环境和假设的环境之间一定具有差别,在实际的应用中,各个构件在动态交互过程中可能会出现数据交换不能有效兼容等问题。从另一方面,构件的源代码因为相对构件运用方法有着某些未知性,于是,对其实施静态分析是很难进行的。更别说对相关数据依赖以及控制依赖关系的获得,进行有关测试用例的构造,进行测试,确认出进行测试需要的充分性准则是很难的。所以,在构件测试技术中,应该考虑以下几个问题:

  (1)怎样利用系统方法对测试驱动程序与插针进行构建。对于构件测试驱动程序,其一定是基于脚本的程序,同时仅仅对其黑盒功能进行执行。主要有基于场景以及规范的测试驱动程序;各个测试探针进行构件行为或者黑盒功能的合理模拟,在当前,还是主要通过基于操作脚本以及基于模型的方法。

  (2)怎样合理构造出可重用的构件。是开发系统方法以及工具安装可重用的测试程序,进而进行各种测试资源的存储及管理,主要有测试脚本、测试用例以及数据。在当今,两个方向较为突出,一个为于构件内部中进行构件测试的创建,内置测试是实例;另外方向是使用可直接插拔技术进行一套测试程序的创建,不仅牵涉了测试访问接口以及标准化测试信息格式,还牵涉到测试数据库模式与定义以及开发新的可插拔技术支持构件单元测试。

  (3)怎样正确进行可重用及通用的构件测试平台的构建。在一般情况下,测试检索以及执行、测试结果检查以及报告组成了测试执行环境。此测试平台可以根据不同语言及不同技术开发实现的构件是它的主要问题。

  (4)怎样合理进行可测试构件的构建。其牵涉到三个问题,是定义及设计可测构件的测试接口与公共结构、开发系统方法进行可测构件的构建、小化系统资源及开销。

  四、总结

  由于社会对软件的需求一直增加,软件复杂度及规模一直加大,因此,人们不断探索创新软件开发技术,进而满足软件发展的需要。对于构件技术,其要经过创建及复用构件,还要通过组装构件保证软件系统开发的完成,能使系统的开发效率提高,系统的开发成本还减少,进而达到软件复用的要求。于是,构件化的软件开发方法能够作为一种有效途径,使软件危机得以解决。与此同时,更要引起构件测试技术中的一些主要问题。