掌桥专利:专业的专利平台
掌桥专利
首页

游戏兼容性自动化测试方法、装置、设备及介质

文献发布时间:2023-06-19 11:05:16


游戏兼容性自动化测试方法、装置、设备及介质

技术领域

本发明涉及软件测试技术领域,尤其涉及一种游戏兼容性自动化测试方法、装置、设备及介质。

背景技术

如今游戏的迭代速度也越来越快,游戏功能也越来越多,如果依靠人工回归测试将非常耗时,使得测试效率低下。

在目前的市场上,Andriod终端的机型众多,各种机型可能搭载不同的Andriod系统版本,为了保证游戏在Andriod系统中都能正常运行,需要在各种机型上进行兼容性测试。但是对于任何一个测试团队而言,其能准备的Andriod终端都是有限的,这样必然导致测试的覆盖率不全,测试样本数量不够;另外,测试人员在多个Andriod终端上分别进行人工测试,需要进行大量重复操作,耗费时间且工作量大。

针对游戏兼容性测试效率低的问题,目前尚未提出有效的解决方法。

发明内容

本发明实施例提供了一种游戏兼容性自动化测试方法、装置、设备及介质,以至少解决游戏兼容性测试效率低的问题。

第一方面,本发明实施例提供了一种游戏兼容性自动化测试方法,包括以下步骤:

连接测试终端;

获取所述测试终端的显示屏坐标,根据所述显示屏坐标模拟游戏界面交互操作;

获取兼容性测试用例集合;

运行所述测试终端执行所述兼容性测试用例集合,生成测试报告。

在其中一些实施例中,所述连接待测试终端,包括:

加载测试终端的驱动;

连接adb;

搭建测试环境。

在其中一些实施例中,所述搭建测试环境,包括:

加载pytest测试框架;

基于pytest测试框架,配置执行兼容性测试用例的前置条件和后置条件。

在其中一些实施例中,所述根据所述显示屏坐标模拟游戏界面交互操作之前,包括:

将所述前置条件和所述后置条件下发至所述测试终端。

在其中一些实施例中,所述根据所述显示屏坐标模拟游戏界面交互操作,包括:

在所述测试终端上定位所述显示屏坐标,并模拟游戏界面交互操作。

在其中一些实施例中,所述运行所述测试终端执行所述兼容性测试用例集合,包括:

批量运行若干所述测试终端分别执行所述兼容性测试用例集合。

在其中一些实施例中,所述获取兼容性测试用例集合之前,包括:

预先创建若干兼容性测试用例,形成所述兼容性测试用例集合。

第二方面,本发明实施例提供了一种游戏兼容性自动化测试装置,包括:

驱动加载模块,用于连接测试终端;

交互模拟模块,用于获取所述测试终端的显示屏坐标,根据所述显示屏坐标模拟游戏界面交互操作;

自动测试模块,用于获取兼容性测试用例集合;运行所述测试终端执行所述兼容性测试用例集合,生成测试报告。

第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的游戏兼容性自动化测试方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的游戏兼容性自动化测试方法。

相比于现有技术,本发明实施例提供一种游戏兼容性自动化测试方法、装置、设备及介质,通过模拟界面交互操作和导入测试用例,实现Android游戏的兼容性自动化测试,提高了游戏兼容性测试效率。

本发明的一个或多个实施例的细节在以下附图和描述中提出,以使本发明的其他特征、目的和优点更加简明易懂。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明游戏兼容性自动化测试方法的流程图;

图2是本发明实施例的游戏兼容性自动化测试装置的结构框图;

图3为本发明实施例的一种电子设备的结构示意图。

具体实施方式

为了使本申请的目的、技术方案更加清楚明白,以下结合附图及实施例,对本发明进行描述和说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。基于本发明提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。

在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。

实施例1

本实施例提供一种对游戏兼容性自动化测试方法,图1是本发明游戏兼容性自动化测试方法的流程图。

如图1所示,游戏兼容性自动化测试方法,包括以下步骤:

S101、连接测试终端。

本实施例在服务器上执行,上述测试终端为Andriod终端,指装载Andriod系统或基于Andriod系统开发的衍生系统的智能终端,例如Andriod手机。该测试系统可通过USB接口与服务器向量,服务器通过加载手机驱动,可连接手机。

S102、获取测试终端的显示屏坐标,根据显示屏坐标模拟游戏界面交互操作。

不同的手机具有不同的显示屏尺寸和分辨率,因此需要获取测试终端的显示屏坐标,确定游戏按键在测试终端显示屏的坐标,基于该坐标编写脚本来模拟用户的操作,如点击、输入、滑动等界面交互操作。基于该脚本执行测试用例,实现自动化测试。

在本实施例中,通过adb测试工具(基于脚本的自动化测试工具)完成游戏兼容性自动化测试,通过Python编写脚本,以调用adb库模拟游戏界面交互操作。

当然在其他实施例中,可以自由选择其他程序设计语言调用adb库,如JAVA。

S103、获取兼容性测试用例集合。

通过兼容性测试用例实现游戏界面交互操作,从而实现自动测试。兼容性测试用例可以通过测试人员进行脚本编写得到,也可以通过第三方录制工具直接录制而成。

S104、运行测试终端执行所述兼容性测试用例集合,生成测试报告。

调用测试用例运行方法,在手机上执行兼容性测试用例集合中的各测试用例,实现自动执行游戏界面交互相关操作,自动输出测试报告,该测试报告以HTML的格式生成,使得测试人员可直接查看测试结果,即查看各兼容性测试用例的执行情况。

本实施例适用于对不同的测试终端(不同型号的Andriod手机或其他Andriod终端)进行游戏兼容性自动化测试的应用场景,不需要测试人员重复对不同测试终端进行测试操作,仅需通过adb测试工具和程序设计语言执行本实施所述方法,即可实现在不同手机上运行游戏进行自动化兼容性测试,提高了测试效率和可靠性。

需要注意的是,采用本实施例的游戏兼容性自动化测试可以对多台测试终端进行批量测试。

优选地,连接待测试终端,包括:

加载测试终端的驱动;

连接adb;

搭建测试环境。

adb作为测试工具,通过脚本实现自动化测试,其脚本具有明确的配置路径,执行可靠性高,且adb具有较高的资源利用率。通过adb可模拟用户与游戏界面的交互操作。通过adb可唤醒并控制测试终端执行测试任务。

通过现有的测试框架可搭建运行测试用例的测试环境。

优选地,搭建测试环境,包括:

加载pytest测试框架;

基于pytest测试框架,配置执行兼容性测试用例的前置条件和后置条件。

pytest测试框架作为Pyhton的测试框架,编写测试用例的方法简单,且支持参数化,可以细粒度地控制要测试的测试用例。

pytest测试框架的setup()函数和teardown()函数可根据不同测试终端(手机)的情况来模拟各种执行测试用例前与执行测试用例后的前置条件与后置条件。setup(),执行兼容性测试用例前执行,完成测试准备工作,例如数据库链接、测试数据、打开文件等。teardown()在执行完兼容性测试用例后执行,例如断开数据库链接、回收内存资源等。

上述pytest测试框架可通过参数规定执行游戏兼容性自动化测试的设备数量。

优选地,根据显示屏坐标模拟游戏界面交互操作之前,包括:

将前置条件和后置条件下发至测试终端。

在测试终端上部署前置条件和后置条件,使得测试终端在执行兼容性测试前完成前置条件,在执行完兼容性测试后完成后置条件。

优选地,基于pytest测试框架完成游戏兼容性自动化测试后,对测试结果进行判断时,可添加一个断言assert。

优选地,根据显示屏坐标模拟游戏界面交互操作,包括:

在测试终端上定位显示屏坐标,并模拟游戏界面交互操作。

明确测试终端的显示屏坐标后,基于adb可在测试终端上模拟用户操作,即模拟游戏界面交互操作,以实现模拟用户操作执行测试用例。

优选地,运行测试终端执行所述兼容性测试用例集合,包括:

批量运行若干测试终端分别执行兼容性测试用例集合。

通过批量运行测试终端执行兼容性测试用例,可同时在多个Andriod终端上分别进行游戏兼容性自动化测试,节约时间,提高测试效率。

优选地,获取兼容性测试用例集合之前,包括:

预先创建若干兼容性测试用例,形成所述兼容性测试用例集合。

根据测试需求和实际情况,可预先编写脚本创建若干兼容性测试用例,用于进行游戏兼容性测试。

实施例2

本实施例提供一种游戏兼容性自动化测试装置,该装置用于实现上述实施例及优选实施例方式,已经进行过说明的不再赘述,如下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能实现并被构想的。

图2是本发明实施例的游戏兼容性自动化测试装置的结构框图,如图2所示,该装置包括:

驱动加载模块21,用于连接测试终端;

交互模拟模块22,用于获取测试终端的显示屏坐标,根据显示屏坐标模拟游戏界面交互操作;

自动测试模块23,用于获取兼容性测试用例集合;运行测试终端执行所述兼容性测试用例集合,生成测试报告。

需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。

实施例3

图3为本发明实施例的一种电子设备的结构示意图,如图3所示,提供了一种电子设备,该电子设备可以是PC或移动终端等设备,其内部结构图可以如图3所示。该电子设备包括处理器、存储器、输入装置和输出装置;其中该电子设备中处理器的数量可以是一个或多个,图3中以一个处理器为例;电子设备中的处理器、存储器、输入装置和输出装置可以通过总线或其他方式连接,图3中以通过总线连接为例。

存储器作为一种计算机可读存储介质,可以包括高速随机存取存储器、非易失性存储器等,可用于存储操作系统、软件程序、计算机可执行程序和数据库,如本发明实施例1的游戏兼容性自动化测试方法对应的程序指令/模块,还可以包括内存,可用于为操作系统和计算机程序提供运行环境。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。

处理器用于提供计算和控制能力,可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。处理器通过运行存储在存储器中的计算机可执行程序、软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现实施例1的游戏兼容性自动化测试方法。

该电子设备的输出装置可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

该电子设备还可包括网络接口/通信接口,该电子设备的网络接口用于与外部的终端通过网络连接通信。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所述更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

本领域普通技术人员可以理解实现实施例1的游戏兼容性自动化测试方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

实施例4

本发明实施例提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于实现游戏兼容性自动化测试方法,该方法包括:

连接测试终端;

获取测试终端的显示屏坐标,根据显示屏坐标模拟游戏界面交互操作;

获取兼容性测试用例集合;运行测试终端执行所述兼容性测试用例集合,生成测试报告。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述实施例的游戏兼容性自动化测试方法操作,还可以执行本发明任意实施例所提供的游戏兼容性自动化测试方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的游戏兼容性自动化测试方法。

值得注意的是,上述游戏兼容性自动化测试方法的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

相关技术
  • 游戏兼容性自动化测试方法、装置、设备及介质
  • 网页兼容性自动化测试方法、装置、设备及介质
技术分类

06120112793192