论文部分内容阅读
软件测试是当今计算机科学与工程中起着至关重要作用的领域之一。近年来,随着软件测试理论和技术的不断发展,它已成为软件工程领域内保证软件质量的必不可少的关键过程。分布计算技术通常指在网络计算平台上开发、部署、管理和维护以资源共享和协同工作为主要目标的分布式应用系统,是近20年来影响计算技术发展最活跃因素之一。分布式对象技术是面向对象技术与分布式计算技术的结合,在这种软件体系结构中,应用程序的所有功能都表达为众多分布式对象提供的各种服务。当前在分布式对象计算领域已经形成三大主流技术,它们分别是OMG组织的CORBA、Sun公司EJB和Microsoft公司的DCOM,其中由OMG组织发布的CORBA模型具有较完善的规范标准,有着良好的开放性和扩展性,在开发大型分布式软件的过程中起着越来越重要的作用。由于程序的分布运行,测试分布式对象程序必须同时考虑并发特性和运行环境。在CORBA运行环境中,由于并发的存在,导致不确定性和同步问题,分布式对象程序具有不可预测性和不可重现性,这使得基于CORBA的分布式对象程序的测试工作变得十分困难。本文在基于事件约束的测试技术的基础上,对基于CORBA技术开发的软件系统的测试进行了较深入的研究。本文从程序规约出发,提出E-CSPE约束描述来定义事件间的依赖关系,即事件约束,并根据E-CSPE约束规则间的关系推导新的事件约束。通过判断程序执行时所产生的事件序列和E-CSPE描述的事件约束,可以检测被测CORBA分布式对象程序的正确性。 本文对测试框架进行了研究,提出了一种基于CORBA的测试系统框架TFCDOS。TFCDOS通过事件序列记录CORBA分布式对象程序的运行过程,并通过定义事件约束来检测事件的有效性。TFCDOS可以有效地判断CORBA分布式对象程序在CORBA运行环境中并发执行的正确性,适用于CORBA分布式对象程序的功能测试和性能测试。