基于云计算的软件自动化测试方法

文档序号:6427339阅读:225来源:国知局
专利名称:基于云计算的软件自动化测试方法
技术领域
本发明涉及软件测试技术领域,特别涉及一种基于云计算的软件自动化测试方法。
背景技术
狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT、软件、互联网相关服务,也可是其他服务。云计算(Cloud Computing)是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage ^Technologies)、虚拟化(Visualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。目前的软件自动化测试方案中,大多是编写完测试脚本,根据测试要求,执行配置好的测试脚本。在测试执行开始时,就已经确定要执行的测试脚本,并且在执行中不可以改变。现有方案存在以下缺陷1、当有大量的测试脚本需要执行时,如5000条,在测试执行开始是,先将这5000 条测试脚本大致平均的分配到不同的测试服务器上,然后所有测试服务器开始执行分配到的测试脚本。其结果是,一些测试服务器先完成测试任务,一些测试服务器耗费很长时间完成测试。因为,必须要等到最后一台测试服务器运行结束,才可以完成整个测试。所以,在这个过程中,资源利用率比较低。2、在对测试脚本执行测试过程中,如遇到特殊情况,需要取消一些测试脚本的执行,只能停止所有的测试脚本的测试,然后按照新的测试脚本集合重新执行,效率比较低。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是如何提供一种基于云计算的软件自动化测试方法, 以实现将测试脚本动态地分配给测试服务器,提高对测试服务器的资源利用率。( 二 )技术方案为解决上述技术问题,本发明提供一种基于云计算的软件自动化测试方法,其包括步骤B 主服务器向每台端服务器发送1条测试脚本;C:接收到测试脚本的端服务器执行对所述测试脚本的测试,并将测试结果返回给所述主服务器;D 所述主服务器判断测试脚本集合中的所有测试脚本是否发送完毕,如果发送完毕,结束测试,否则,执行步骤E ;E 所述主服务器向返回测试结果的端服务器发送1条新的测试脚本,执行所述步骤。优选地,在所述步骤B之前还包括步骤A 所述主服务器获得所述测试脚本集合后与所述端服务器建立连接。优选地,所述步骤A具体包括步骤Al 所述主服务器加载配置文件,并从所述配置文件中获得所述测试脚本集合;步骤A2 所述端服务器启动后主动连接所述主服务器,连接成功后,所述端服务器处于等待状态;步骤A3 所述主服务器判断已经与所述主服务器连接的所述端服务器的数量是否达到标准值,如果达到,执行所述步骤B,否则,所述主服务器处于等待状态。优选地,所述主服务器定期扫描所述配置文件,如果所述配置文件改变,所述主服务器根据改变后的配置文件获得新的测试脚本集合,并按照所述新的测试脚本集合向所述端服务器发送测试脚本。优选地,所述步骤C具体包括步骤Cl 接收到测试脚本的端服务器执行对所述测试脚本的测试,如果测试成功,所述端服务器将成功的测试结果返回给所述主服务器,执行所述步骤D,否则,所述端服务器将失败的测试结果返回给所述主服务器,执行C2 ;步骤C2 判断所述测试脚本的测试失败次数是否达到设定值,如果达到,结束对所述测试脚本的测试,执行所述步骤D,否则,执行所述步骤C3 ;步骤C3 所述主服务器将所述测试脚本发送给一个未执行过所述测试脚本的端服务器,执行所述步骤Cl。优选地,所述设定值一般为3。优选地,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中退出测试,则所述主服务器收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。优选地,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中正常退出测试,所述端服务器发送退出信号给所述主服务器,所述主服务器接收到所述退出信号后收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。优选地,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中异常退出测试,所述主服务器根据所述端服务器返回测试结果的超时时间判定所述端服务器已经退出测试后收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。优选地,在所述步骤D中,结束测试后,还包括步骤F 将所述测试结果保存到测试管理工具中,并生成测试报告。(三)有益效果本发明的基于云计算的软件自动化测试方法具有以下优势首先,所有测试脚本由主服务器动态分配给端服务器,端服务器逐条执行测试脚本并在返回测试结果后获得新的测试脚本,这样,保证了所有端服务器的资源在整个测试过程中都被充分的利用,提高了资源利用率;其次,主服务器会把测试失败的测试脚本发送给未执行过所述测试脚本的端服务器执行测试,从而能够有效解决端服务器环境问题或者前测试脚本失败导致的当前测试脚本测试失败的问题,减少了测试脚本因非正常因素导致测试失败的概率;再次,在测试过程中,能够通过修改配置文件,改变测试脚本集合,提高了测试灵活性。


图1是本发明的基于云计算的软件自动化测试方法流程图;图2是测试脚本失败时的处理过程示意图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。图1是本发明的基于云计算的软件自动化测试方法流程图。如图1所示,所述方法包括步骤A 主服务器获得测试脚本集合后与端服务器建立连接。所述步骤A具体包括步骤Al 所述主服务器加载配置文件,并从所述配置文件中获得所述测试脚本集合。表1是所述配置文件格式的一种实例。表1配置文件格式实例
权利要求
1.一种基于云计算的软件自动化测试方法,其特征在于,包括步骤B 主服务器向每台端服务器发送1条测试脚本;C 接收到测试脚本的端服务器执行对所述测试脚本的测试,并将测试结果返回给所述主服务器;D 所述主服务器判断测试脚本集合中的所有测试脚本是否发送完毕,如果发送完毕, 结束测试,否则,执行步骤E ;E 所述主服务器向返回测试结果的端服务器发送1条新的测试脚本,执行所述步骤C。
2.如权利要求1所述的方法,其特征在于,在所述步骤B之前还包括步骤A所述主服务器获得所述测试脚本集合后与所述端服务器建立连接。
3.如权利要求2所述的方法,其特征在于,所述步骤A具体包括步骤Al 所述主服务器加载配置文件,并从所述配置文件中获得所述测试脚本集合;A2:所述端服务器启动后主动连接所述主服务器,连接成功后,所述端服务器处于等待状态;A3:所述主服务器判断已经与所述主服务器连接的所述端服务器的数量是否达到标准值,如果达到,执行所述步骤B,否则,所述主服务器处于等待状态。
4.如权利要求3所述的方法,其特征在于,所述主服务器定期扫描所述配置文件,如果所述配置文件改变,所述主服务器根据改变后的配置文件获得新的测试脚本集合,并按照所述新的测试脚本集合向所述端服务器发送测试脚本。
5.如权利要求1所述的方法,其特征在于,所述步骤C具体包括步骤Cl 接收到测试脚本的端服务器执行对所述测试脚本的测试,如果测试成功,所述端服务器将成功的测试结果返回给所述主服务器,执行所述步骤D,否则,所述端服务器将失败的测试结果返回给所述主服务器,执行C2 ;C2 判断所述测试脚本的测试失败次数是否达到设定值,如果达到,结束对所述测试脚本的测试,执行所述步骤D,否则,执行所述步骤C3 ;C3 所述主服务器将所述测试脚本发送给一个未执行过所述测试脚本的端服务器,执行所述步骤Cl。
6.如权利要求5所述的方法,其特征在于,所述设定值一般为3。
7.如权利要求1所述的方法,其特征在于,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中退出测试,则所述主服务器收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。
8.如权利要求7所述的方法,其特征在于,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中正常退出测试,所述端服务器发送退出信号给所述主服务器,所述主服务器接收到所述退出信号后收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。
9.如权利要求7所述的方法,其特征在于,在所述步骤C中,如果接收到测试脚本的端服务器在执行对所述测试脚本的测试过程中异常退出测试,所述主服务器根据所述端服务器返回测试结果的超时时间判定所述端服务器已经退出测试后收回所述测试脚本,并将所述测试脚本发送给另一个端服务器。
10.如权利要求1所述的方法,其特征在于,在所述步骤D中,结束测试后,还包括步骤F 将所述测试结果保存到测试管理工具中,并生成测试报告。
全文摘要
本发明公开了一种基于云计算的软件自动化测试方法,涉及软件测试领域。所述方法包括步骤主服务器向每台端服务器发送1条测试脚本;接收到测试脚本的端服务器执行对所述测试脚本的测试,并将测试结果返回给所述主服务器;所述主服务器判断测试脚本集合中的所有测试脚本是否发送完毕,如果发送完毕,结束测试,否则,所述主服务器向返回测试结果的端服务器发送1条新的测试脚本,执行相应步骤。所述方法中,所有测试脚本由主服务器动态分配给端服务器,端服务器逐条执行测试脚本并在返回测试结果后获得新的测试脚本,这样,保证了所有端服务器的资源在整个测试过程中都被充分的利用,提高了资源利用率。
文档编号G06F11/36GK102222042SQ20111017688
公开日2011年10月19日 申请日期2011年6月28日 优先权日2011年6月28日
发明者李阳 申请人:北京新媒传信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1