用于云游戏的测试即服务制造技术

技术编号:31610552 阅读:18 留言:0更新日期:2021-12-29 18:39
描述了用于视频游戏的测试即服务(TaaS)的技术。在一个实施方案中,一种方法包括用于接收用于测试一个或多个错误的游戏应用程序的操作。所述方法还提供了由自动游戏测试模块执行游戏会话的多个自动会话,同时针对所述多个自动会话实现测试输入,所述测试输入包括控制输入、游戏状态、系统参数和网络参数。所述方法还包括用于进行以下项的操作:在所述执行所述多个会话期间检测错误的发生以生成快照文件,所述快照文件包括控制输入的一部分、游戏状态数据以及与错误的发生相关联的视频分量。状态数据以及与错误的发生相关联的视频分量。状态数据以及与错误的发生相关联的视频分量。

【技术实现步骤摘要】
【国外来华专利技术】用于云游戏的测试即服务


[0001]本公开总体上涉及视频游戏开发,并且更具体地,涉及用于提供对视频游戏的云测试作为服务的方法和系统。

技术介绍

[0002]视频游戏测试是游戏开发过程的一部分,其保持对视频游戏的质量控制。游戏测试的功能之一是发现和记录会损害视频游戏使用的软件缺陷(例如,错误(bug))。过去,由于视频游戏的规模较小且复杂度较低,因此游戏测试所需的人力相对较少。如今,视频游戏测试是开发者和游戏发行商为确保其游戏应用程序平稳运行而采用的大规模且昂贵的工作。这是由于如今的视频游戏的大范围和复杂性以及消费者对几乎完美的游戏动作的需求所致。因此,游戏测试在确保发布的游戏平稳运行且没有错误、差错或其他缺陷上起到很大的作用。一些发行商可能会在给定的时间使数十名质量保证测试者致力于某个特定的游戏标题,这可能会非常昂贵。此外,当游戏测试者确实识别出错误时,由于与游戏测试者的游戏会话和其他因素相关联的差异,开发者并不总是能够再现所识别的错误。
[0003]那些实施方案正是在这种背景下出现的。

技术实现思路

[0004]本公开的实施方案涉及用于游戏测试回放、自动游戏测试以及测试即服务(TaaS)的方法和系统。
[0005]在一个实施方案中,提供一种方法。所述方法包括用于在云测试系统的服务器上执行供玩家玩的视频游戏的操作,所述执行视频游戏产生视频输出。所述方法还包括用于从玩家的客户端装置接收用于与视频游戏进行交互的控制输入序列的操作,所述控制输入序列的一部分导致在与视频游戏的所述交互期间出现错误。此外,所述方法包括用于将控制输入序列的导致错误的所述部分与由视频游戏产生的视频输出和游戏状态数据一起记录在玩家生成的快照文件中的操作。此外,所述方法包括用于使用机器学习模块处理玩家生成的快照文件的操作,所述机器学习模块从控制输入序列、视频输出和游戏状态中提取特征以用于分类到错误检测模型中。此外,所述方法包括用于使用错误检测模型来识别可能通过视频游戏再现错误的一组测试控制输入的操作。
[0006]在另一个实施方案中,提供一种方法。所述方法包括用于从视频游戏的一个或多个玩家的玩游戏过程中生成玩家生成的快照文件的操作,所述玩家生成的快照文件中的每一个包括与视频游戏的玩游戏过程的其中发生错误的部分相关联的控制输入序列、游戏状态数据和视频分量。所述方法还包括用于使用机器学习模块来处理玩家生成的快照文件以生成多个机器习得的控制输入的操作,所述多个机器习得的控制输入是除了用于再现错误的来自玩家生成的快照文件的控制输入序列之外的。此外,所述方法包括用于在输入相应的机器习得的控制输入的同时执行多个自动视频游戏会话的操作,所述执行多个自动视频游戏会话各自产生相应的游戏状态数据和相应的视频分量,其中所述相应的机器习得的控
制输入、所述相应的游戏状态数据和所述相应的视频分量记录在相应的机器生成的快照文件中。另外,所述方法包括用于使用机器学习模块来处理所述机器生成的快照文件以识别错误实现条件的操作,所述错误实现条件可用于识别导致错误的控制输入序列类别,所述控制输入序列类别是除了玩家生成的快照文件的控制输入序列之外的。
[0007]在另一个实施方案中,提供一种方法。所述方法包括用于在服务器处接收用于测试一个或多个错误的游戏应用程序的操作。所述方法还包括用于由自动游戏测试模块执行游戏应用程序的自动会话同时针对所述自动会话实现测试输入的操作,所述测试输入包括控制输入、游戏状态数据、系统参数和网络参数。另外,所述方法提供了由错误报告程序在所述执行自动游戏会话期间检测错误的发生。此外,所述方法提供了生成快照文件,所述快照文件包括控制输入的一部分、游戏状态数据以及与错误的发生相关联的视频分量。
[0008]从以下结合附图进行的详细描述中,本公开的其他方面将变得显而易见,所述附图以示例的方式示出了本公开的原理。
附图说明
[0009]通过结合附图参考以下描述,可以最好地理解本公开,在附图中:
[0010]图1示出了根据一个实施方案的错误报告和再现的概念图。
[0011]图2示出了根据一个实施方案的用于如实地再现由游戏测试者发现的错误的改进的方法和系统的概念性图示。
[0012]图3示出了根据一个实施方案的错误再现模块的概念性图示,所述错误再现模块用于通过处理捕获由游戏测试者识别的错误的快照文件来再现所述错误。
[0013]图4示出了根据一个实施方案的包括多个快照文件的快照日志的概念图。
[0014]图5示出了根据一个实施方案的基于云的测试服务器系统如何实现机器学习以生成在统计上与导致先前识别的错误或新识别的错误相关的新控制输入。
[0015]图6示出了根据一个实施方案的差异实现模块如何创建与自动游戏测试模块处的自动游戏会话一起执行的差异包的概念图。
[0016]图7示出了根据一个实施方案的正在执行多个自动游戏会话的自动游戏测试模块的概念性图示。
[0017]图8示出了根据一个实施方案的利用分布式游戏引擎来执行多个自动游戏会话的自动游戏测试模块的架构的图。
[0018]图9A和图9B概念性地示出了根据各种实施方案的机器学习模块、自动游戏测试模块和错误实现模块如何一起工作以识别可以实现先前或新识别的错误的条件集合。
[0019]图10示出了根据一个实施方案的通过混沌(chaos)或霰弹枪(shotgun)测试发现新错误的方法。
[0020]图11示出了根据一个实施方案的在游戏的新内部版本(build)或版本(version)中针对先前识别的错误进行自动测试的概念图。
[0021]图12示出了根据一个实施方案的作为测试即服务(TaaS)的一部分如何将针对第一游戏已知的错误实现条件应用于第二游戏。
[0022]图13是根据一个实施方案的可用于测试即服务(TaaS)的平台的概念性图示。
[0023]图14示出了可以用于执行本公开的各种实施方案的各方面的示例装置(例如TaaS
服务器)的部件。
具体实施方式
[0024]本公开的实施方案涉及用于使游戏开发者能够再现由游戏测试者识别的错误的方法和系统。本公开的实施方案还涉及使用机器学习算法来提供导致先前识别的错误或未识别的错误的附加的机器习得的控制输入的方法。此外,本公开的实施方案涉及用于使测试过程的各部分自动化以在变化的系统相关条件下测试游戏的方法和系统。此外,本公开的实施方案涉及允许将游戏测试的各方面作为服务来执行。然而,对于本领域的技术人员来说,显而易见的是,可以在没有这些具体细节中的一些或全部的情况下实践本公开。在其他实例中,没有详细描述众所周知的处理操作,以避免不必要地模糊本公开。
[0025]游戏测试是一个昂贵且耗时的过程。实际上,所有进入商业阶段的游戏都将经过许多轮测试,以确保一定水平的功能和艺术品质。测试在开发视频游戏应用程序来发行的过程中起到多种作用。其中一些包括功能测试、合规性测试、兼容性测试、负载测试、beta测试、多玩家测试本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种方法,其包括:在云测试系统的服务器上执行供玩家玩的视频游戏,所述执行所述视频游戏产生视频输出;从所述玩家的客户端装置接收用于与所述视频游戏进行交互的控制输入序列,所述控制输入序列的一部分导致在与所述视频游戏的所述交互期间出现错误;将控制输入序列的导致所述错误的所述部分与由所述视频游戏产生的所述视频输出和游戏状态数据一起记录在玩家生成的快照文件中;使用机器学习模块处理所述玩家生成的快照文件,所述机器学习模块从所述控制输入序列、所述视频输出和所述游戏状态中提取特征以用于分类到错误检测模型中;使用所述错误检测模型识别可能会通过所述视频游戏再现所述错误的一组测试控制输入。2.如权利要求1所述的方法,其还包括:在分别输入用于再现所述错误的所述一组测试控制输入的同时执行多个自动视频游戏会话,所述执行所述多个自动视频游戏会话各自产生相应的游戏状态数据和相应的视频分量,其中所述相应的测试控制输入、游戏状态数据和视频分量记录在所述云测试系统的快照数据库中的相应的机器生成的快照文件中。3.如权利要求2所述的方法,其还包括:使用所述机器学习模块,基于是否再现了错误来执行对所述相应的快照文件的分类,并基于所述分类来更新所述错误检测模型;从所述错误检测模型中提取错误实现条件,所述错误实现条件能够用于识别导致所述错误的附加控制输入。4.如权利要求3所述的方法,其中所述错误实现条件包括与所述错误相关联的一个或多个规则,所述一个或多个规则能够用于识别导致所述错误的控制输入序列类别,所述控制输入序列类别包括所述控制输入序列和附加的控制输入序列。5.如权利要求3所述的方法,其中所述错误实现条件包括与所述错误相关联的游戏情境,所述游戏情境能够用于识别通常由与所述错误的发生相关联的所述玩家生成的快照文件和所述机器生成的快照文件共享的一个或多个游戏状态类别。6.如权利要求5所述的方法,其中所述一个或多个游戏状态类别指定级别、阶段、任务、使命、游戏中的动作、地图区域、角色、物品、能力、游戏中的对象、游戏中的对象之间的交互、人工智能(AI)角色、玩家控制的角色或结构中的一者或多者。7.如权利要求3所述的方法,其中所述错误实现条件包括与所述错误相关联的系统情境,所述系统情境能够用于识别通常由与所述错误的发生相关联的所述玩家生成的快照文件和所述机器生成的快照文件共享的一个或多个系统参数类别。8.如权利要求7所述的方法,其中所述系统参数类别指定中央处理单元(CPU)的时钟速率、图形处理单元(CPU)的时钟速率、通信链路的数据速率容量、所述通信链路的等待时间、与所述通信链路相关联的抖动或压缩速率中的一者或多者。9.如权利要求1所述的方法,其中多个自动视频游戏会话中的每一个在分布式游戏引擎上执行,所述分布式游戏引擎包括具有由相应的多个计算节点执行的操作的多个功能单元,其中由用于所述分布式游戏引擎的所述相应的多个计算节点执行的所述操作由分布式
游戏引擎管理器管理。10.如权利要求2所述的方法,其中所述自动视频游戏会话在相应的分布式游戏引擎上执行,每个分布式游戏引擎包括用于执行相应功能的多个游戏引擎节点,所述游戏节点中的每一个与相应的计算节点进行通信以处理用于所述执行所述相应功能的操作。11.一种计算机实现的方法,其包括:从视频游戏的一个或多个玩家的玩游戏过程中生成玩家生成的快照文件,所述玩家生成的快照文件中的每一个包括与所述视频游戏的所述玩游戏过程的其中发生错误的部分相关联的控制输入序列、游戏状态数据和视频分量;使用机器学习模块来处理所述玩家生成的快照文件以生成多个机器习得的控制输入,所述多个机器习得的控制输入是除了用于再现所述错误的来自所述玩家生成的快照文件的所述控制输入序列之外的;在输入相应的机器习得的控制输入的同时执行多个自动视频游戏会话,所述执行所述多个自动视频游戏会话各自产生相应的游戏状态数据和相应的视频分量,其中所述相应的机...

【专利技术属性】
技术研发人员:J贝尔特兰K坎农N格罗斯D布特勒
申请(专利权)人:索尼互动娱乐有限责任公司
类型:发明
国别省市:

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

1