论文部分内容阅读
随着科技的进步,软件产品越来越多的进入我们的生活。软件测试对于保证软件产品的质量具有重要意义。本项目是IBM DB2/z QA Team的内部项目。众所周知,随着业务的扩大,许多行业例如金融、物流等其数据量越来越大,对所使用的数据存储软件例如数据库的要求也越来越高。DB2/z作为DB2系列产品中的最高端产品也越来越多的被应用。随着版本的升级和新功能的加入,越来越多的测试用例被引入到测试集合中,而测试方式和测试人员的数量都基本不变,造成了一种时间紧、任务重、人员少的局面,并且DB2/z的测试过程复杂、耗时长、重复工作多。结合这些特点,需要开发一套能够自动完成重复工作例如自动测试环境搭建、自动运行测试用例、自动结果分析与处理等工作的自动化测试系统。这套自动化测试系统对于整个Team的工作具有十分重要的意义,降低了测试人员的工作压力,使测试人员有更多的时间去解决具体遇到的问题,避免重复性的工作,提高工作效率。同时,对于提高测试效率,保证测试质量方面也具有十分重要的意义。本文首先结合国内外在软件自动化测试方面的研究现状进行阐述。然后结合与本系统相关的业务规则,对本系统进行功能和非功能需求进行分析,并结合这些需求分析设计和实现系统,最后对系统进行测试。本系统主要包括三个模块即自动测试环境搭建模块、自动运行测试用例模块、自动测试结果分析与处理模块。同时,在系统的设计与开发中针对所测试产品的测试环境复杂、测试用例数量大等特点,设计和实现了相应的调度算法和运行策略。本系统作为一个J2EE项目,在开发中使用的前端技术包括JSP技术,DOJO技术,Struts2技术等。业务服务层和数据访问层结合使用Hibernate框架、Spring框架。后台数据库使用DB2。同时结合Z系列大型机上的虚拟机技术以及REXX技术,在此基础上设计和实现了面向DB2应用的自动测试系统。