节点文献

基于云计算的软件测试服务研究

Research of Software Test on Cloud Computing

【作者】 钟华

【导师】 刘晓强;

【作者基本信息】 东华大学 , 计算机系统结构, 2012, 硕士

【摘要】 随着信息技术的日益发展,软件业竞争的日趋激烈,人们对软件产品的质量意识逐渐加强。仅仅依靠以劳动密集型为特征的传统手工测试,已经不能满足人们对快节奏的软件开发和测试的需求。自动化测试技术为此提供了有效的解决方案,它能够帮助企业降低人力成本,缩短测试周期。然而,软件测试所需的资源不是现成的,所以每次测试都需花“巨资”建立和拆除测试环境,这给测试人员带来了很大的不便。云计算是一种新的计算模式,是分布式计算、并行计算和网格计算的发展。云计算的超大规模、虚拟化、高可用性、通用性、可扩展性和按需服务的特点,为构建虚拟、可靠的软件测试环境,方便低成本的软件测试服务提供了更多的可能性。用户不再需要准备自己的测试环境,可以按需获得测试服务,本文为此建立一套基于云计算环境下的测试系统。本文以上海市教育委员会科研项目“基于云计算的分布式系统并行测试”为背景构建云测试的实验系统框架。通过分析云计算技术及自动化测试技术,采用Eucalyptus作为构建基于云计算的软件测试服务系统的底层架构,采用Autotest作为自动化测试框架。利用Eucalyptus可以灵活的管理虚拟机,如动态的分配、删除虚拟机。Autotest架构可以灵活的添加客户端,其只需通过命令cli add就可以将虚拟机添加至客户端列表。在云测试实验系统框架的基础上本文设计了三个系统模块:镜像匹配模块、控制管理模块、用户管理模块。镜像匹配模块主要负责帮助云端选择具体某个镜像创建虚拟机并搭建测试环境,根据被测系统所需环境及虚拟机镜像的多样性,定义基于xml的镜像及被测软件环境需求的描述规范进行镜像匹配。控制管理管理模块基于Pxssh协议实现数据传输。用户管理模块利用Django框架实现云测试系统客户端。本文根据测试任务所涉及的子任务的拓扑序列及各类测试资源的使用状况提出了以测试用例级为粒度,在原有的表调度算法的基础上加以改进的调度方法。对测试任务,采用表调度算法,对于子任务,则采用优先级、任务依赖关系等任务调度原则进行虚拟机的动态生成与分配。实践证明,本云测试系统在使用过程中,能自动选择镜像进行创建虚拟机,任务调度也大大提高了软件测试效率,并且该系统具有良好的易用性,达到了最初的设计目标,具有重要的理论意义和实用价值。

【Abstract】 Along with the development of information technology, and the fierce competition of the software industry, people gradually product strengthened consciousness on the quality of software. Traditional manual testing, whose characteristic is labor intensive and high strength, cannot meet the demand of fast software development and test. Test automation technology provides the solution for it effectively. It helps to lower labor costs and shorten test cycle for enterprises. However, the resources of software testing are not ready-made, and every time the test engineers should take much time to establish and dismantle test environment, such as server installation, database client installation, the measured software installation. It brings a great amount of inconvenience to the testers.Cloud computing, which is a new calculation model, is the development of distributed computing, parallel computing and grid computing. At present, the cloud computing concept has been acquired widespread approval of the industry. Its characters of large scale, virtualization, high availability, versatility, scalability and on-demand service provide better possibilities to build a virtual and reliable software testing environment for low cost software test services. Users no longer need to prepare their own testing environment, but can demand for testing services.The software testing under cloud computing environment is called cloud testing, and the cloud computing environment which supports software test is call test cloud in this paper. Cloud testing is a new testing service model.Through analyzing the technology of cloud computing and automated software, this thesis adopted Eucalyptus to build cloud computing environment, which is the bottom architecture of software testing service system, and it also used Autotest as its auto test framework. According to use Eucalyptus, people can manage virtual machines flexibly, such as dynamic allocation, delete the virtual machine. The structure of Autotest make it easy to use a virtual machine as its client, because it adds clients only by one command of cli_add.Because of the diversity of the tested system and images of virtual machine, this paper defines the image description and the environmental requirements using xml format to help cloud to choose a specific mirror. Then cloud creates a virtual machine using the image and sets up test the environment. And this paper is used the Django framework as the user client interface and used Pxssh deal to be responsible for communication between cloud and Autotest server.According to the attributes of sub tasks and the resources in the testing platform, the paper adopted a algorithm whose cloud test system-level scheduling method is based on test cases for the size, and the original list scheduling algorithm is improved. The test tasks use of list scheduling algorithms,while sub-tasks uses of priority, task dependencies as task scheduling principles to dynamically generated and distribute virtual machines.

  • 【网络出版投稿人】 东华大学
  • 【网络出版年期】2012年 07期
节点文献中: 

本文链接的文献网络图示:

本文的引文网络