论文部分内容阅读
通过对近十几年软件测试及自动化测试技术文献的总结,本文首先阐述了该技术产生的背景以及发展现状。随着软件产业的发展,软件的规模越来越大,复杂性也越来越高。大规模和高复杂度的软件给软件测试工作带来了很大的困扰:一方面软件需求变得庞大多而交错复杂,给全面性测试软件带来一定困难,甚至不可能进行完全的穷举测试;另一方面软件的使用也越来越复杂,各种软件的用法大不相同,同一种软件不同使用者的用法也大相径庭,这就导致了必须针对不同的软件进行测试设计,测试用例几乎没有复用性。伴随着传统的自动化测试无法解决问题的增多,本文提出了一个较好的解决上述问题的有效手段:自动化系统测试平台。自动化系统测试平台是基于TestDirector 进行管理的,将待测软件的共同部分抽象出来,采用数据库来保存待测软件的测试元数据,采用不同的配置来区分待测软件不同的特性,对嵌入式软件和Windows 应用程序进行系统测试。本文接着详细的讨论了测试主管(TestDirector)的概念和原理,以及TestDirector 提供的开放测试体系架构(Open Test Architecture)。我们基于开放测试体系架构,不仅可以操作TestDirector 的数据库,开发各种支持测试过程和数据的管理软件,代替手工操作,节约大量的时间,而且可以根据协议,开发嵌入式软件的自动化测试系统,并将其集成到TestDirector 中,接受统一的测试管理。针对Windows 应用程序的测试系统的集成更为简单,可以直接通过TestDirector 内置的测试类型进行集成管理并远程控制。本文进一步阐述了通用的Windows 应用程序自动化测试系统。测试系统包括了通用测试脚本库(测试策略)和测试元数据库两个重要的部分。通过对传统自动化测试的总结、抽象、统一,创建了通用的测试脚本库,可以复用在不同软件的系统测试中;测试元数据通过关系数据库进行组织和管理。通过对Windows 应用程序自动化测系统的分解和分析,将功能模块进一步分割,采用自顶向下的设计方法,通过TSL 完成对测试的描述,并给出执行结果。