测试方法和测试驱动器以及测试平台技术

技术编号:14836777 阅读:103 留言:0更新日期:2017-03-17 04:10
本发明专利技术公开了一种测试方法和驱动器及测试平台。所述测试驱动器包括:数据加载模块,配置为对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和测试逻辑模块,配置为利用所述数据加载模块提供的所述用例对象,按照预定测试逻辑对所述被测系统进行测试。本发明专利技术基于驱动器模型的概念,实现了测试数据和测试逻辑的分离,并通过分布式平台架构将整个测试过程服务化,提升了测试过程的自动化程度,实现了对测试用户的规范化管理和使用,由此降低了测试参与难度,从而提高了测试效率,进而降低了测试成本。

【技术实现步骤摘要】

本专利技术总体上涉及测试
,特别是涉及一种将测试过程服务化的测试方法和驱动器以及测试平台。
技术介绍
随着互联网产品的更迭速度越来越快,为了更迅速地获得对软件产品的反馈,实践中更多地采用持续交付的方法。持续交付会要求需求分析、产品的用户体验和交互、设计、开发、测试、运维等角色密切协作。显然,在这种高速发展的互联网环境下,传统的测试方法已经无法适应当前的产品开发节奏。质量保障不仅仅是测试单一岗位负责的事情,更需要同样对业务和产品了解的产品人员和开发人员能够参与进来,从而更全面的提升产品质量和所有岗位的质量意识。然而,现有技术中,传统的基于脚本和工具的测试方法很难让除测试人员之外的其他岗位人员参与到测试过程中。实践中,测试策略和测试用例描述的差异化也使得难以对其进行统一化管理,由此使得测试过程的人工参与度过高,测试成本较高但测试效率较低。另外,目前测试数据和测试逻辑的共存对应,使得测试用例的内部关系复杂,维护成本高且难于管理。此外,在现有技术中,测试人员不仅需要根据具体的场景和需求创建测试计划,还需要管理分布式调度、并发运行等繁琐的执行细节。因此,如何提升测试过程的自动化程度,降低测试用例开发与使用门槛,是测试
迫切需要解决的问题。
技术实现思路
本专利技术的一个目的在于,提供一种将测试过程服务化的测试方法和驱动器及测试系统,以实现对测试用例等的规范化管理,降低测试参与难度,由此提高测试效率,降低测试成本。为了实现上述目的,本专利技术的测试方法基于驱动器模型的概念,实现测试数据和测试逻辑的分离,进一步按相同模式来编写测试逻辑,使得测试用例的编程规范化,便于后续管理和复用。另一方面,本专利技术的分布式测试平台采用前后端分离的浏览器/服务器(B/S)架构,来实现对测试任务的统一调度,通过将整个测试过程服务化,让测试用例的管理和使用能够方便地被更多人使用起来,由此大大降低测试成本。需要指出的是,在本申请中,所谓的测试用例不仅仅包括传统意义上的功能测试,而旨在将代码编译、静态检查、单元测试、部署环境、冒烟测试、性能测试、稳定性测试、流量复制、对比验证、效果验证、异常挖掘、版本发布等等一切测试过程都定义为测试用例。用户可以根据具体的场景和需求创建测试计划,从而在持续交付的测试过程中使用。根据本专利技术的一个方面,提供了一种测试方法,包括:对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和利用所述用例对象,按照预定测试逻辑对所述被测系统进行测试。利用本方法,实现测试数据和测试逻辑的分离,由此便于对测试用例进行规范化管理,由此降低了测试成本。在本专利技术的一个实施例中,所述测试方法还包括:针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数,其中,根据所述用例执行参数,按照所述预定测试逻辑对所述被测系统进行测试。在本专利技术进一步的实施例中,所述用例执行参数包括以下中的任一个或多个:并发执行特征以及沙箱隔离执行特征。在本专利技术的一个实施例中,所述测试方法还包括:根据需求分析,设计所述预定测试逻辑;和基于所述预定测试逻辑,设计针对所述被测系统的测试计划,所述测试计划对应于一个或多个所述测试用例。在本专利技术进一步的实施例中,一个所述测试用例在多个不同所述测试计划中复用。在本专利技术的一个实施例中,所述测试用例的形式包括以下中的任一个或多个:文件夹、压缩文件包、so文件、数据库记录以及数据库表格。在本专利技术的一个实施例中,所述测试用例定义的数值还包括执行条件。根据本专利技术的另一个方面,提供了一种测试驱动器,包括:数据加载模块,配置为对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和测试逻辑模块,配置为利用所述数据加载模块提供的所述用例对象,按照预定测试逻辑对所述被测系统进行测试。在本专利技术的一个实施例中,所述测试驱动器还包括:用例设置模块,配置为针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数,其中,所述测试逻辑模块配置为根据所述用例执行参数,按照所述预定测试逻辑对所述被测系统进行测试。在本专利技术进一步的实施例中,所述用例执行参数包括以下中的任一个或多个:并发执行特征以及沙箱隔离执行特征。在本专利技术的一个实施例中,所述测试驱动器还包括:测试逻辑设计模块,配置为根据需求分析,设计所述预定测试逻辑;和测试用例设计模块,配置为基于所述预定测试逻辑,设计针对所述被测系统的测试计划,所述测试计划对应于一个或多个所述测试用例。在本专利技术进一步的实施例中,一个所述测试用例在多个不同所述测试计划中复用。在本专利技术的一个实施例中,所述测试用例的形式包括以下中的任一个或多个:文件夹、压缩文件包、so文件、数据库记录以及数据库表格。在本专利技术的一个实施例中,所述测试用例定义的数值还包括执行条件。在本专利技术的又一个方面中,提供了一种分布式测试平台,包括:主控服务器,所述主控服务器接收用于被测系统的测试计划和相应的测试驱动模块,所述测试计划对应于一个或多个测试用例,其中所述测试驱动模块包括数据加载单元和测试逻辑单元;测试资源池,所述测试资源池包括一个或多个节点服务器,其中,所述主控服务器被配置为,按照预定规则,从所述测试资源池中选择用于所接收到的测试计划的节点服务器,并且其中,所选的节点服务器被配置为:利用所述测试驱动模块的数据加载单元,对所述测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和按照所述测试逻辑单元中的预定测试逻辑,利用所述用例对象对所述被测系统进行测试。利用上述分布式测试平台,实现了对测试任务的统一调度,通过将整个测试过程服务化,让测试用例的管理和使用能够方便地被更多人使用起来,由此大大降低测试成本。在本专利技术的一个实施例中,所述节点服务器还被配置为:针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数;和根据所述用例执行参数,按照所述预定测试逻辑,利用所述用例对象对所述被测系统进行测试。在本专利技术进一步的实施例中,所述用例执行参数包括以下中的任一个或多个:并发执行特征和沙箱隔离执行特征。在本专利技术的一个实施例中,所述预定测试逻辑是根据需求分析而设计的;以及所述测试计划是基于所述预定测试逻辑而设计的。在本专利技术进一步的实施例中,一个所述测试用例在多个不同所述测试计划中复用,以及/或者,一个所述测试驱动模块在多个不同所述测试用例中复用。在本专利技术的一个实施例中,所述分布式测试平台上执行的多个不同所述预定测试逻辑是采用同一指定模式编写的。在本专利技术的一个实施例中,所述测试资源池包括多个测试资源组,每个所述测试资源组由一个或多个所述节点服务器构成,其中,所述主控服务器被配置为:根据所接收到的测试计划,确定用于执行该测试计划的测试资源组;遍历所确定的测试资源组中的全部节点服务器,以确定满足所述测试计划的执行要求的节点服务器;以及从所述满足执行要求的节点服务器中,选择负荷最小的节点服务器,作为用于所述测试计划的节点服务器。利用本专利技术的上述实施例,能够实现测试资源的优化利用。在本专利技术的一个实施例中,所述主控服务器本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201610934302.html" title="测试方法和测试驱动器以及测试平台原文来自X技术">测试方法和测试驱动器以及测试平台</a>

【技术保护点】
一种测试驱动器,包括:数据加载模块,配置为对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和测试逻辑模块,配置为利用所述数据加载模块提供的所述用例对象,按照预定测试逻辑对所述被测系统进行测试。

【技术特征摘要】
1.一种测试驱动器,包括:数据加载模块,配置为对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和测试逻辑模块,配置为利用所述数据加载模块提供的所述用例对象,按照预定测试逻辑对所述被测系统进行测试。2.根据权利要求1所述的测试驱动器,还包括:用例设置模块,配置为针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数,其中,所述测试逻辑模块配置为根据所述用例执行参数,按照所述预定测试逻辑对所述被测系统进行测试。3.根据权利要求2所述的测试驱动器,其中,所述用例执行参数包括以下中的任一个或多个:并发执行特征和沙箱隔离执行特征。4.根据权利要求1至3中任一项所述的测试驱动器,还包括:测试逻辑设计模块,配置为根据需求分析,设计所述预定测试逻辑;和测试用例设计模块,配置为基于所述预定测试逻辑,设计针对所述被测系统的测试计划,所述测试计划对应于一个或多个所述测试用例。5.根据权利要求4所述的测试驱动器,其中,一个所述测试用例在多个不同所述测试计划中复用。6.一种测试方法,包括:对被测系统的测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和利用所述用例对象,按照预定测试逻辑对所述被测系统进行测试。7.根据权利要求6所述的测试方法,还包括:针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数,其中,根据所述用例执行参数,按照所述预定测试逻辑对所述被测系统进行测试。8.根据权利要求7所述的测试方法,其中,所述用例执行参数包括以下中的任一个或多个:并发执行特征和沙箱隔离执行特征。9.根据权利要求6至8中任一项所述的测试方法,还包括:根据需求分析,设计所述预定测试逻辑;和基于所述预定测试逻辑,设计针对所述被测系统的测试计划,所述测试计划对应于一个或多个所述测试用例。10.根据权利要求9所述的测试方法,其中,一个所述测试用例在多个不同所述测试计划中复用。11.一种分布式测试平台,包括:主控服务器,所述主控服务器接收用于被测系统的测试计划和相应的测试驱动模块,所述测试计划对应于一个或多个测试用例,其中所述测试驱动模块包括数据加载单元和测试逻辑单元;测试资源池,所述测试资源池包括一个或多个节点服务器,其中,所述主控服务器被配置为,按照预定规则,从所述测试资源池中选择用于所接收到的测试计划的节点服务器,并且,其中,所选的节点服务器被配置为:利用所述测试驱动模块的数据加载单元,对所述测试用例进行解析,以将所述测试用例定义的数值赋予用例对象,其中所述测试用例定义的数值至少包括测试输入值和期望输出值;和按照所述测试逻辑单元中的预定测试逻辑,利用所述用例对象对所述被测系统进行测试。12.根据权利要求11所述的测试平台,其中,所述节点服务器还被配置为:针对所述测试用例,设置与所述测试用例的执行方式相关联的用例执行参数;和根据所述用例执行参数,按照所述预定测试逻辑,利用所述用例对象对所述被测系统进行测试。13.根据权利要求12所述的测试平台,其中,所述用例执行参数包括以下中的任一个或多个:并发执行特征和沙箱隔离执行特征。14.根据权利要求11至13中任一项所述的测试平台,其中,所述预定测试逻辑是根据需求分析而设计的;以及所述测试计划是基于所述预定测试逻辑而设计的。15.根据权利要求14所述的测试平台,其中,一个所述测试用例在多个不同所述测试计划中复用,以及/或者,一个所述测试驱动模块在多个不同所述测试用例中复用。16.根据权利要求11至13中的任一项所述的测试平台,其中,所述测试资源池包括多个测试资源组,每...

【专利技术属性】
技术研发人员:李景成
申请(专利权)人:广州神马移动信息科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1