论文部分内容阅读
软件测试,特别是软件测试自动化技术属于当前国际软件界最有争议,亟待发展的技术之一。自动化测试就是希望能够通过自动化测试工具或其他手段,按照测试工程师的预定计划进行自动的测试,从而达到减轻手工测试的劳动量、提高软件质量的目的。本文首先分析了当前软件测试行业面临的问题及引入自动化测试的必要性、风险及具体流程。然后介绍了当前自动化测试研究的几个重点方向,包括自动化测试周期方法学及其在软件开发中的重要作用、自动化测试的先进脚本技术、当今流行的自动化测试工具的特征和各自的适用范围以及在自动化测试中引入框架的解决方案。本文着重介绍了作者所在软件公司根据具体情况所开发出来的一套具有较强通用性和可扩展性的测试平台,包括系统的功能特征、主体架构以及主要模块的具体实现等。并考虑将现有的自动化测试工具(包括第三方测试工具如MI公司的WinRunner、QuickTest Professional和自动化测试小组开发的一些辅助测试工具,如PHS模拟器、VOIP模拟器等)与测试平台集成,以弥补传统的单一依靠工具所带来的不足。本文最后以一个产品为例,分析如何在自动化测试系统上进行具体的测试,并对传统的手工测试和引入自动化测试以后的测试成本进行比较,通过实践证明了在软件产品测试中正确地引入自动化测试能够达到提高测试质量、减少测试时间、节省测试经费、提高测试效率的目的。本课题的设计与具体实现涉及了当前流行的自动化测试技术和方法,也提出了一些新颖的思想和方法,比如通过分层的测试脚本结构和动态生成脚本技术等提高了测试套件的重用性和可维护性;另外,借鉴应用编程接口(API)的思想,通过提供测试API的方法实现测试平台的独立性,使得所开发的自动化测试系统独立于具体的测试业务,具有很强的通用性。