用于机器运行的游戏的自动化测试的方法、设备、装置以及计算机可读存储介质制造方法及图纸

技术编号:21617046 阅读:43 留言:0更新日期:2019-07-17 08:07
公开了一种机器运行的游戏的自动化测试方法,包括:加载并解析项目配置文件,所述项目配置文件指定待测的游戏和游戏的自动化测试用例文件;根据所述项目配置文件加载游戏的自动化测试用例文件,其中所述游戏的自动化测试用例文件包括流程控制关键字,所述流程控制关键字包括至少一个第一流程控制关键字,所述第一流程控制关键字是用代码实现的相应的自动化测试行为;以及根据所述游戏的自动化测试用例文件来执行游戏的自动化测试。还公开了一种游戏的自动化测试的设备、装置和计算机可读存储介质。

Automated testing methods, devices, devices and computer-readable storage media for machine-running games

【技术实现步骤摘要】
用于机器运行的游戏的自动化测试的方法、设备、装置以及计算机可读存储介质
本申请涉及自动化测试,更具体地,涉及机器运行的游戏的自动化测试的方法、设备、装置以及计算机可读存储介质。
技术介绍
机器运行的游戏越来越多地受到用户的青睐,机器运行的游戏的开发、测试达到白热化。现有的游戏自动化测试方案主要包括基于游戏控件识别的自动化测试方案以及基于图像识别与控件识别结合的自动化测试方案。例如使用腾讯的GAutomator自动化测试框架可以完成游戏的控件识别与获取,通过编写测试脚本可以自动地操作游戏控件,进而完成游戏的自动化测试。网易的Airtest自动化测试框架较GAutomator而言,除了可以通过控件识别获取并操作游戏控件外,还支持通过图像识别技术识别并操作游戏中的控件,可以通过集成开发环境辅助游戏的自动化测试脚本的编写,如图1所示。现有游戏自动化测试方案存在以下问题。首先,设计游戏的自动化测试用例需要测试人员编写测试代码,对测试人员要求较高,需要测试人员有一定的编程基础,否则无法胜任游戏自动化测试用例的编写工作。进而,由于游戏的自动化测试用例由代码编写,后期需要有一定编程基础的测试人员才能维护,增加了维护难度。其次,游戏的自动化测试用例与普通的自动化测试用例不同,对测试框架有较高的依赖,例如基于GAutomator自动化测试框架编写的游戏的自动化测试脚本无法在Airtest自动化测试框架下兼容运行。如果在编写好游戏的自动化测试用例后,更换测试框架,原有的自动化测试脚本需要大量重新编写。
技术实现思路
本专利技术的实施例提供了机器运行的游戏的自动化测试方法、设备、装置以及计算机可读存储介质,至少部分地解决上面提及的问题。根据本专利技术的第一方面,提供了一种机器运行的游戏的自动化测试方法,包括:加载并解析项目配置文件,所述项目配置文件指定待测的游戏和游戏的自动化测试用例文件;根据所述项目配置文件加载游戏的自动化测试用例文件,其中所述游戏的自动化测试用例文件包括流程控制关键字,所述流程控制关键字包括至少一个第一流程控制关键字,所述第一流程控制关键字是用代码实现的相应的自动化测试行为;以及根据所述游戏的自动化测试用例文件来执行游戏的自动化测试。根据一个实施例,其中,所述项目配置文件还指定游戏测试框架,所述第一流程控制关键字进一步具有游戏测试框架封装模块,所述执行游戏的自动化测试进一步包括:根据所述项目配置文件中指定的所述游戏测试框架,加载相应的游戏测试框架封装模块。根据一个实施例,其中,所述游戏的自动化测试用例文件包括可扩展标记语言XML文件。根据一个实施例,其中,所述游戏的自动化测试用例文件按照范围从大到小依次包括以下三个级别的元素:模块、测试场景和执行步骤。根据一个实施例,其中,所述流程控制关键字包括用于标识执行次数的第二流程控制关键字,其用于定义对测试场景或执行步骤的执行次数,所述执行游戏的自动化测试进一步包括:响应于确定所述游戏的自动化测试用例文件包括所述第二流程控制关键字,根据与所述第二流程控制关键字有关的参数,对所述第二流程控制关键字所定义的测试场景或执行步骤执行所述参数限定的次数。根据一个实施例,其中,所述游戏的自动化测试用例文件包括用于标识所标识的执行步骤是否可以跳过的第三流程控制关键字,所述执行游戏的自动化测试进一步包括:响应于确定所述游戏的自动化测试用例文件包括所述第三流程控制关键字并且其值为1,在所述第三流程控制关键字所定义的执行步骤执行失败时,继续向下执行;响应于确定所述游戏的自动化测试用例文件包括所述第三流程控制关键字并且其值为0时,中断所述游戏的自动化测试的执行。根据一个实施例,其中,所述第一流程控制关键字包括以下任意一种或多种:直接点击元素、输入文字、滑动、等待场景、等待游戏组件、等待控件出现并点击、点击第几个控件,所述执行游戏的自动化测试进一步包括:响应于确定所述游戏的自动化测试用例文件包括所述第一流程控制关键字,根据所述第一流程控制关键字的取值,执行以下的一种或多种:直接点击元素、输入文字、滑动、等待场景、等待游戏组件、等待控件出现并点击、点击第几个控件。根据一个实施例,其中,所述执行游戏的自动化测试进一步包括按照所述游戏的自动化测试用例文件记载的顺序执行游戏的自动化测试。根据一个实施例,其中,所述游戏测试框架包括GAutomator和Airtest。根据一个实施例,该方法进一步包括:根据游戏的自动化测试的执行结果,自动生成测试报告。根据一个实施例,其中,所述游戏的自动化测试是自动化冒烟测试。根据本专利技术的第二方面,提供了一种游戏的自动化测试设备,包括:项目配置文件载析器,其被配置来加载并解析项目配置文件,所述项目配置文件指定待测的游戏和游戏的自动化测试用例文件;游戏的自动化测试用例文件加载器,其配置来根据所述项目配置文件加载游戏的自动化测试用例文件,其中所述游戏的自动化测试用例文件包括流程控制关键字,所述流程控制关键字包括至少一个第一流程控制关键字,所述第一流程控制关键字是用代码实现的相应的自动化测试行为;以及执行器,其配置来解析所述游戏的自动化测试用例文件,并根据所述游戏的自动化测试用例文件来执行游戏的自动化测试。根据一个实施例,其中,所述项目配置文件还指定游戏测试框架,所述第一流程控制关键字进一步具有游戏测试框架封装模块,所述执行器进一步包括游戏测试框架封装模块加载器,其配置来根据所述项目配置文件中配置的所述游戏测试框架,加载相应的游戏测试框架封装模块。根据本专利技术的第三方面,提供了一种游戏的自动化测试的装置,包括:处理器;以及存储器,其配置为在其上存储有计算机可执行指令,所述指令当在所述处理器中执行时,使得所述处理器实现上述第一方面及其任一实施例的方法。根据本专利技术的第四方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机实现上述第一方面及其任一实施例的方法。根据上述实施例,由于游戏的自动化测试用例是通过独立的配置文件编写的,因此对编写或者维护自动化测试用例的人员的专业要求较低,大大降低了自动化测试用例的编写门槛,编写自动化测试用例的任务可以交给没有编程基础的测试人员完成,大幅提升了游戏的自动化测试用例的编写效率。同时,由于配置文件比自动化测试脚本更加简洁直观,因此提升了自动化测试用例的后期维护效率。替代地或附加地,还可以做到游戏的自动化测试用例与测试框架的隔离,在游戏的自动化测试用例编写完成后,更换自动化测试框架时无需修改原有的游戏的自动化测试用例,实现了游戏的自动化测试用例和测试框架的解耦,使得游戏的自动化测试用例具有较强的可移植性。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为辅助游戏的自动化测试脚本的编写的集成开发环境。图2为根据本专利技术实施例的游戏的自动化测试的方法的流程图。图3a和图3b为根据本专利技术实施例的游戏的自动化测试用例的一个示例。图4为根据本专利技术实施例的游戏的自动化测试用例的一个示例的执本文档来自技高网...

【技术保护点】
1.一种机器运行的游戏的自动化测试方法,包括:加载并解析项目配置文件,所述项目配置文件指定待测的游戏和游戏的自动化测试用例文件;根据所述项目配置文件加载游戏的自动化测试用例文件,其中所述游戏的自动化测试用例文件包括流程控制关键字,所述流程控制关键字包括至少一个第一流程控制关键字,所述第一流程控制关键字是用代码实现的相应的自动化测试行为;以及根据所述游戏的自动化测试用例文件来执行游戏的自动化测试。

【技术特征摘要】
1.一种机器运行的游戏的自动化测试方法,包括:加载并解析项目配置文件,所述项目配置文件指定待测的游戏和游戏的自动化测试用例文件;根据所述项目配置文件加载游戏的自动化测试用例文件,其中所述游戏的自动化测试用例文件包括流程控制关键字,所述流程控制关键字包括至少一个第一流程控制关键字,所述第一流程控制关键字是用代码实现的相应的自动化测试行为;以及根据所述游戏的自动化测试用例文件来执行游戏的自动化测试。2.如权利要求1所述的方法,其中,所述项目配置文件还指定游戏测试框架,所述第一流程控制关键字进一步具有游戏测试框架封装模块,所述执行游戏的自动化测试进一步包括:根据所述项目配置文件中指定的所述游戏测试框架,加载相应的游戏测试框架封装模块以供执行。3.如权利要求1所述的方法,其中,所述游戏的自动化测试用例文件包括可扩展标记语言XML文件。4.如权利要求1所述的方法,其中,所述游戏的自动化测试用例文件按照范围从大到小依次包括以下三个级别的元素:模块、测试场景和执行步骤。5.如权利要求4所述的方法,其中,所述流程控制关键字包括用于标识执行次数的第二流程控制关键字,其用于定义对测试场景或执行步骤的执行次数,所述执行游戏的自动化测试进一步包括:响应于确定所述游戏的自动化测试用例文件包括所述第二流程控制关键字,根据与所述第二流程控制关键字有关的参数,对所述第二流程控制关键字所定义的测试场景或执行步骤执行所述参数限定的次数。6.如权利要求4所述的方法,其中,所述流程控制关键字包括用于标识所标识的执行步骤是否可以跳过的第三流程控制关键字,所述执行游戏的自动化测试进一步包括:响应于确定所述游戏的自动化测试用例文件包括所述第三流程控制关键字并且其值为1,在所述第三流程控制关键字所定义的执行步骤执行失败时,继续向下执行;响应于确定所述游戏的自动化测试用例文件包括所述第三流程控制关键字并且其值为0时,中断所述游戏的自动化测试的执行。7.如权利要求1所述的方法,其中,所述第一流程控制关键字包括以下任意一种或多种:直接点击元素、输入文字、滑动、等待场景...

【专利技术属性】
技术研发人员:刘子强校莹蒋瑞捷
申请(专利权)人:腾讯科技成都有限公司
类型:发明
国别省市:四川,51

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

1