测试数据的处理方法、装置和系统与流程

文档序号:12271204阅读:408来源:国知局
测试数据的处理方法、装置和系统与流程

本发明涉及计算机领域,具体而言,涉及一种测试数据的处理方法、装置和系统。



背景技术:

现有的测试数据收集的技术中,,例如游戏数据收集的技术中,一般方法是人工开发一些特定的脚本或监控程序,将其部署到PC或移动设备等目标设备中,在游戏运行的过程中,通过与目标设备连接的脚本或监控程序来获得游戏运行时的数据。测试完成之后,对采集到的若干数据样本进行整理和处理,然后通过手工或者应用编程接口的调用,将数据上传到展示和分析的系统中。

整个过程需要较多的人工干预,工作中存在较多串行步骤,难以并行同步开展,花费了较大的人力成本。如果测试和处理数据的时间较长,需要在整个结果完成之后,才能看到游戏具体的表现,难以在测试的当时就方便地查看运行表现和定位问题。现有的测试数据表现也较为单一和孤立,无法进行时间、空间、数据的联动,难以和真实的游戏场景关联起来。最后汇总的测试数据需要人工或者特定脚本进行整理,再上传到展示和分析系统中,增加了后续处理过程,且不同项目形式不一,不方便对比和管理。

针对现有技术中的测试数据的处理方法,测试时间长,工作效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种测试数据的处理方法、装置和系统,以至少解决现有技术中的测试数据的处理方法,测试时间长,工作效率低的技术问题。

根据本发明实施例的一个方面,提供了一种测试数据的处理方法,包括:接收用户前端发送的测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息;根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试;获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

根据本发明实施例的另一方面,还提供了一种测试数据的处理装置,包括:接收模块,用于接收用户前端发送的测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息;控制模块,用于根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试;处理模块,用于获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

根据本发明实施例的另一方面,还提供了一种测试数据的处理系统,包括:至少一个测试设备,用于进行测试;用户前端,用于发送测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息;测试处理服务端,分别与用户前端和至少一个测试设备具有通信关系,用于根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

在本发明实施例中,接收用户前端发送的测试请求,根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果,从而实现对测试数据的采集和处理的目的。

容易注意到,由于测试设备可以是多个,可以支持多个用户和设备同时开展测试,由于游戏测试一般时间较长,并行执行多项测试可以更好的节约测试时间,方便项目组内对测试过程的集中开展。在进行测试的过程中,可以采集测试数据,并对测试数据进行处理,无需人工对测试过程进行干预,简化测试人员的工作。因此,通过本发明实施例所提供的方案,可以达到节省测试时间,提高工作效率,降低测试成本的效果。

由此,本发明实施例解决了现有技术中的测试数据的处理方法,测试时间长,工作效率低的技术问题。

附图说明

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

图1是根据本发明实施例的一种测试数据的处理方法的流程图;

图2是根据本发明实施例的一种可选的测试数据的处理方法的流程图;

图3是根据本发明实施例的一种测试数据的处理装置的示意图;

图4是根据本发明实施例的一种测试数据的处理系统的示意图;以及

图5是根据本发明实施例的一种可选的测试数据的处理系统的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面,首先对本发明实施例中涉及的相关技术术语进行解释,以方便对本发明实施例的理解。

CPU占比:CPU,即Central Processing Unit,中央处理器,CPU占比也就是CPU的占用率,设备上运行程序占用的CPU资源的百分比。

内存消耗:测试设备运行程序所占用的内存的资源。

实施例1

根据本发明实施例,提供了一种测试数据的处理方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种测试数据的处理方法的流程图,如图1所示,该方法包括如下步骤:

步骤S102,接收用户前端发送的测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息。

具体的,上述步骤S102中的测试请求可以是RPC请求(远程过程调用请求,Remote Procedure Call的简写)。用户前端可以是前端交互和展示系统,即Web前端,可以是计算机终端,移动终端,例如,PC、智能手机(包括:Android手机和iOS手机)、平板电脑、iPad等终端,但不仅限于此。上述至少一个测试设备的标识信息可以是测试设备的唯一标识,例如,可以是IP地址、MAC地址等。

在一种可选的方案中,当测试人员需要进行测试时,可以根据一个或多个测试设备的IP地址,通过前端交互和展示系统生成发出RPC请求,并将RPC请求发送给测试处理服务端开始测试。

步骤S104,根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试。

具体的,上述步骤S104中的测试可以是游戏测试(例如计算机端的游戏测试,移动设备端的游戏测试等),软件测试和程序测试等,测试设备上可以提前安装需要进行测试的游戏,软件或者程序。

在一种可选的方案中,测试处理服务端可以与前端交互和展示系统,以及一个或多个测试设备通过网络进行连接,测试处理服务端可以接收前端交互和展示系统发出的RPC请求,解析得到请求中的测试设备的IP地址,并根据相应的测试设备的IP地址,控制各个测试设备启动,并进行相应的测试。

步骤S106,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

具体的,当进行游戏测试时,上述步骤S106中的测试数据可以包括游戏数据、性能数据和游戏截图等,例如,可以是游戏运行时的CPU占比,内存消耗大小,渲染帧率,游戏玩家的游戏位置,所在游戏场景等可以标识当前游戏测试点和游戏性能信息的数据。

在一种可选的方案中,测试处理服务端可以采集每个测试设备在游戏测试过程中,生成的游戏数据,并在游戏测试结束之后,对采集到的全部游戏数据进行处理,生成全部游戏数据对应的测试结果;或者在游戏测试的过程中实时对采集到的游戏数据进行处理,生成游戏数据对应的测试结果。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。当游戏测试人员需要在移动设备端的游戏进行测试时,可以预先在3个智能手机上安装相应的游戏,智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3,可以通过Web端生成包含3个智能手机的IP地址的RPC请求,并通过Web端发送给测试处理服务端,测试处理服务端在接收到IP地址1、IP地址2和IP地址3之后,可以通过IP地址1,与智能手机1进行连接,通过IP地址2,与智能手机2进行连接,通过IP地址3,与智能手机3进行连接,控制3个智能手机启动游戏,进行游戏测试。当在游戏运行的过程中,3个智能手机可以生成游戏数据,测试处理服务端可以实时采集3个智能手机生成的游戏数据,并对3个智能手机生成的游戏数据进行处理,得到3个智能手机的测试结果。

由上可知,本发明上述实施例一公开的方案中,接收用户前端发送的测试请求,根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果,从而实现对测试数据的采集和处理的目的。

容易注意到,由于测试设备可以是多个,可以支持多个用户和设备同时开展测试,由于游戏测试一般时间较长,并行执行多项测试可以更好的节约测试时间,方便项目组内对测试过程的集中开展。在进行测试的过程中,可以采集测试数据,并对测试数据进行处理,无需人工对测试过程进行干预,简化测试人员的工作。因此,通过本发明实施例所提供的方案,可以达到节省测试时间,提高工作效率,降低测试成本的效果。

由此,本发明提供的上述实施例一的方案解决了现有技术中的测试数据的处理方法,测试时间长,工作效率低的技术问题。

根据本发明上述实施例,在步骤S104,根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试之前,上述方法还可以包括如下步骤:

步骤S108,生成与至少一个测试设备对应的测试控制器,其中,每个测试控制器加载监控模块至对应的测试设备。

具体的,上述步骤S108中的测试控制器可以是控制进程,可以控制和维护测试设备上进行测试的测试状态和测试进度,发送相关执行,接收和处理状态信息。

可选的,在测试请求还包括:实时测试的情况下,每个测试控制器加载实时监控模块至对应的测试设备。

在一种可选的方案中,测试处理服务端可以包括:测试功能服务器,测试功能服务器在接收到用户前端发送的至少一个测试设备的IP地址之后,可以为每个测试设备生成测试控制器,全程控制对测试设备的测试,即对每个测试设备生成一个软件控制器,即控制进程,控制进程可以加载监控模块到IP地址制定的测试设备上。

在另一种可选的方案中,测试人员在通过Web前端发送RPC请求时,还可以同时发送是否进行实时测试的标记,测试功能服务器在接收到RPC请求之后,可以根据标记判断是否需要启动实时测试,如果测试人员选择进行实时测试,测试功能服务器确定需要启动实时测试,则控制进程加载实时监控模块到测试设备上。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试功能服务器在接收到智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3之后,可以生成3个控制进程,即控制进程1,控制进程2和控制进程3,控制进程1加载监控模块1到智能手机1上,控制进程2加载监控模块2到智能手机2上,控制进程3加载监控模块3到智能手机3上。

又例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试服务器在接收到智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3之后,可以生成3个控制进程,即控制进程1,控制进程2和控制进程3,控制进程1加载实时监控模块1到智能手机1上,控制进程2加载实时监控模块2到智能手机2上,控制进程3加载实时监控模块3到智能手机3上。

通过上述步骤S108,可以通过为每个测试设备生成一个测试控制器,实现多个测试设备同时进行测试的目的。

根据本发明上述实施例,在步骤S108,生成与至少一个测试设备对应的测试控制器之前,上述方法还可以包括如下步骤:

步骤S110,检测至少一个测试设备是否被占用。

步骤S112,如果检测到测试设备未占用,生成与测试设备对应的测试控制器。

步骤S114,如果检测到测试设备被占用,则返回错误消息给用户前端,其中,错误消息用于提示测试设备被占用。

在一种可选的方案中,测试功能服务器在接收到Web前段发送的RPC请求之后,可以检测用户要进行测试的测试设备是否可以进行测试,如果该测试设备被占用,则返回给用户前端一条错误消息,并提示错误原因;如果该测试设备未被占用,则可以执行测试,测试功能服务器生成一个测试控制器。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试服务器在接收到智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3之后,可以检测智能手机1,智能手机2和智能手机3是否可以进行测试,如果智能手机1和智能手机2可以进行测试,智能手机3不能进行测试,则生成2个控制进程和错误消息,即控制进程1和控制进程2,控制进程1加载监控模块1到智能手机1上,控制进程2加载监控模块2到智能手机2上,错误消息发送给Web前端,提示用户智能手机3不能进行测试。

通过上述步骤S110至步骤S114,可以通过对测试设备进行检测,判断每个测试设备是否可以进行测试,并返回不能进行测试的错误消息,从而实现对测试设备的可控性。

根据本发明上述实施例,步骤S108,每个测试控制器加载监控模块至对应的测试设备可以包括如下步骤:

步骤S1082,与至少一个测试设备建立连接。

步骤S1084,将可执行代码发送给至少一个测试设备,其中,至少一个测试设备调用可执行代码。

在一种可选的方案中,每个测试控制器启动后首先与对应的测试设备建立连接,将监控模块的可执行代码段通过建立的网络连接发送到对应的测试设备上,在每个测试设备上调用执行监控代码,实现监控模块的加载。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试功能服务器在生成3个控制进程1,控制进程2和控制进程3之后,分别于智能手机1,智能手机2和智能手机3建立网络连接,控制进程1将监控模块1的可执行代码段发送给智能手机1,智能手机1调用执行监控模块代码1;控制进程2将监控模块2的可执行代码段发送给智能手机2,智能手机2调用执行监控模块代码2;控制进程3将监控模块3的可执行代码段发送给智能手机3,智能手机3调用执行监控模块代码3,从而实现每个测试控制器加载监控模块至对应的测试设备。

通过上述步骤S1082至步骤S1084,可以通过发送可执行代码实现加载监控模块,无需人工部署可执行代码,降低人工成本。

根据本发明上述实施例,步骤S106,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果,可以包括如下:

步骤S1062,接收至少一个监控模块实时或定时采集的对应的测试设备的测试数据,其中,测试数据至少包括如下之一:每个测试设备在测试过程中占用处理器的占用率,消耗内存的大小,渲染帧率,位置数据,场景数据。

步骤S1064,对测试数据进行处理,得到至少一个测试设备的测试结果。

在一种可选的方案中,测试处理服务端还可以包括后台数据处理器,在测试设备进行测试的过程中,每个监控模块可以收集游戏相关数据,并根据需要在适合的时候发送给后台数据处理器,后台数据处理器可以在测试结束之后,对每个监控模块发送的测试数据进行处理,得到每个测试设备的测试结果。

在另一种可选的方案中,测试处理服务端还可以包括实时数据收集服务器,实时数据收集服务器在设计上融合了数据收集服务器和后台数据处理器的功能。在测试设备进行测试的过程中,每个实时监控模块可以实时收集游戏相关数据,并实时发送给实时数据收集服务器,实时数据收集服务器可以实时对每个监控模块发送的测试数据进行分片、转换和调整,得到每个测试设备的测试结果,并存储在数据库中。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。在3个智能手机运行游戏的过程中,监控模块1可以收集智能手机1生成的游戏数据,发送给后台数据处理器;监控模块2可以收集智能手机2生成的游戏数据,发送给后台数据处理器;监控模块3可以收集智能手机3生成的游戏数据,发送给后台数据处理器,后台数据处理器可以对监控模块1发送的游戏数据进行处理,得到智能手机1的测试结果;可以对监控模块2发送的游戏数据进行处理,得到智能手机2的测试结果;可以对监控模块3发送的游戏数据进行处理,得到智能手机3的测试结果。

又例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。在3个智能手机运行游戏的过程中,监控模块1可以收集智能手机1生成的游戏数据,发送给实时数据收集服务器;监控模块2可以收集智能手机2生成的游戏数据,发送给实时数据收集服务器;监控模块3可以收集智能手机3生成的游戏数据,发送给实时数据收集服务器,实时数据收集服务器可以对监控模块1发送的游戏数据进行分片、转换和调整,得到智能手机1的测试结果;可以对监控模块2发送的游戏数据进行分片、转换和调整,得到智能手机2的测试结果;可以对监控模块3发送的游戏数据进行分片、转换和调整,得到智能手机3的测试结果。

通过上述步骤S1062至步骤S1064,可以通过监控模块采集测试数据,并通过数据处理服务器对测试数据进行处理,将每个服务器实现的功能分离,减轻每个服务器的处理负担,提升工作效率。

根据本发明上述实施例,测试请求还可以包括:测试阈值,测试阈值至少包括以下其中之一:帧率阈值和内存阈值;在步骤S1062,接收至少一个监控模块实时或定时采集的对应的测试设备的测试数据之后,上述方法还可以包括如下步骤:

步骤S122,接收至少一个监控模块获取到的测试截图或录屏数据,其中,如果至少一个监控模块采集到的测试设备的测试数据满足测试阈值,则至少一个监控模块对测试画面进行截图操作和/或录屏操作,得到测试截图或录屏数据。

具体的,上述步骤S116中的测试阈值可以是测试性能数据阈值,采集的测试数据的临界值,例如,可以是fps(每秒帧率,frames per second的简写)阈值,内存阈值。

在一种可选的方案中,在进行测试之前,测试人员可以根据测试需要,通过Web前端设置测试性能数据阈值,Web前端根据测试性能数据阈值和测试设备的IP生成RPC请求,并将RPC请求发送给测试功能服务器,测试功能服务器对每个测试设备生成控制进行,并加载监控模块到测试设备,监控模块在每隔一段时间采集测试数据的过程中,当采集到的性能数据触发到这些临界值时,可以触发截屏操作,生成测试截图。

在一种可选的方案中,在进行测试之前,测试人员可以根据测试需要,通过Web前端设置测试性能数据阈值,Web前端根据测试性能数据阈值和测试设备的IP生成RPC请求,并将RPC请求发送给测试功能服务器,测试功能服务器对每个测试设备生成控制进行,并加载监控模块到测试设备,监控模块在每隔一段时间采集测试数据的过程中,当采集到的性能数据触发到这些临界值时,可以触发录屏操作,生成测试视频,即上述的录屏数据,通过测试视频可以更直观地反应测试性能。

通过上述步骤S122,可以设置测试阈值,并在测试数据满足测试阈值时,监控模块进行截图或录屏操作,从而得到测试截图或录屏数据。

根据本发明上述实施例,在步骤S1062,接收至少一个监控模块实时或定时采集的对应的测试设备的测试数据之前,上述方法还包括如下步骤:

步骤S132,验证至少一个监控模块是否加载成功。

在一种可选的方案中,测试功能服务器将每个监控模块加载到对应的测试设备之后,可以调用一次加载的监控代码,根据返回的结果验证加载是否正常,并对加载失败的情况进行处理。

步骤S134,如果加载失败,则返回失败信息给用户前端,其中,失败信息用于提示任意一个监控模块加载失败。

在一种可选的方案中,如果根据返回的结果确定加载不正常,即监控模块加载失败,则返回失败的具体信息到Web前段,Web前段提示测试人员,并记录本次失败信息。

通过上述步骤S132至步骤S134,可以在每个测试控制器将监控模块加载到测试设置之后,验证是否加载成功,如果加载成功,则监控模块可以正常收集测试数据;如果加载失败,返回失败信息,从而实现测试过程的可控性。

根据本发明上述实施例,在步骤S1062,接收至少一个监控模块实时或定时采集的对应的测试设备的测试数据之后,上述方法还可以包括如下步骤:

步骤S142,对测试数据进行标记,并将标记后的测试数据进行存储。

在一种可选的方案中,测试处理服务端还可以包括数据收集服务器,数据收集服务器与多个测试设备进行连接,可以接收每个测试设备上加载的监控模块发送的测试数据,可以根据测试数据和测试设备之间的关系,对接收到的每条测试数据进行标记,标记该条测试数据来自哪个测试设备,并将标记后的测试数据进行存储,存储到与数据收集服务器连接的数据库中。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。数据收集服务器在接收到监控模块1发送的测试数据1和测试数据2,监控模块2发送的测试数据3,测试数据4和测试数据5,以及监控模块3发送的测试数据6之后,对每条测试数据进行标记,标记测试数据1来自智能手机1,测试数据2来自智能手机1,测试数据3来自智能手机2,测试数据4来自智能手机2,测试数据5来自智能手机2,以及测试数据6来自智能手机3,并将标记后的测试数据1、测试数据2、测试数据3、测试数据4、测试数据5和测试数据6存储到数据库中。

通过上述步骤S124至步骤S126,数据收集服务器可以接收所有测试数据,并进行整理存储,将数据收集服务器和后台数据处理服务器进行分离,可以降低测试数据的传输时间,缩短测试时间,减轻每个服务器的处理负担,提升工作效率。

根据本发明上述实施例,在步骤S1062,接收至少一个监控模块定时采集的对应的测试设备的测试数据之后,上述方法还可以包括如下步骤:

步骤S152,将测试数据保存在内存中。

步骤S154,在测试结束之后或者在未接受数据的情况下,将标记后的测试数据存储至数据库。

可选的,实时数据收集服务器可以实时地将测试数据保存到数据库中,供Web前端实时地查看测试进度。

在一种可选的方案中,数据收集服务器在接收到每个监控模块发送的测试数据之后,可以将测试数据暂时放入数据收集服务器的内存中缓存,以便尽快响应监控模块,避免游戏性能,并在游戏测试完成或者没有测试数据接收的间歇,将测试数据保存到数据库中。当测试时间较短时,数据收集服务器可以在测试结束之后,对测试数据进行标记,并将标记后的测试数据存储在数据库中;当测试时间较长时,数据收集服务器可以在没有接收测试数据的间隙对测试数据进行标记,并将标记后的测试数据存储在数据库中

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。数据收集服务器在接收到监控模块1发送的测试数据1和测试数据2,监控模块2发送的测试数据3,测试数据4和测试数据5,以及监控模块3发送的测试数据6之后,可以将测试数据1、测试数据2、测试数据3、测试数据4、测试数据5和测试数据6存放在内存中,并返回接收响应给监控模块1,监控模块2和监控模块3,告知3个监控模块已经接收到测试数据,如果某一时刻未接收到3个监控模块发送的测试数据,则可以将测试数据保存在数据库中。

通过上述步骤S152至步骤S154,数据收集服务器在接收到至少一个监控模块发送的测试数据之后,将测试数据暂存在内存中,从而提升相应速度,避免游戏性能。

根据本发明上述实施例,步骤S1062,接收至少一个监控模块定时采集的对应的测试设备的测试数据可以包括如下步骤:

步骤S10622,每个监控模块每隔第一预设时间采集对应的测试设备的测试数据。

具体的,上述步骤S10642中的第一预设时间可以是根据测试需要设置的时间。

步骤S10624,每个监控模块每隔第二预设时间将对应的测试设备的测试数据发送给数据收集服务器。

具体的,上述步骤S10624中的第二预设时间可以是两个第一预设时间之间的时间,第二预设时间可以与第一预设时间的时间长度相同。

在一种可选的方案中,每个监控模块可以每个一段时间收集一次测试设备的测试数据,并在游戏不忙的时候,例如收集测试数据的间隙,将收集到的测试数据每个一段时间发送给数据收集服务器。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。3个监控模块可以每隔1分钟,收集一次测试设备生成的测试数据,并在未收集测试数据的间隙,每隔1分钟发送给数据收集服务器,数据收集服务器在接收到监控模块1发送的测试数据,将测试数据和智能手机1的IP地址对应缓存在内存中,并在测试接收之后,将测试数据和智能手机1的IP地址对应保存在数据库中。

通过上述步骤S10622至步骤S10624,监控模块可以间歇性地采集测试数据,并间歇性地发送采集到的测试数据给数据收集服务器,从而避免影响游戏性能,提升工作效率,降低测试时间。

根据本发明上述实施例,在步骤S1064,对测试数据进行处理,得到至少一个测试设备的测试结果之前,上述方法还可以包括如下步骤:

步骤S162,接收用户前端发送的测试停止请求。

在一种可选的方案中,测试人员可以通过Web前端结束当前测试,生成测试停止请求,测试停止请求中可以包括当前进行测试的测试设备的IP地址,Web前端将测试停止请求发送给测试功能服务器。

步骤S164,根据测试停止请求,控制相应的测试设备停止测试。

在一种可选的方案中,测试功能服务器在接收到Web前端发送的测试停止请求之后,可以根据测试停止请求中的测试设备的IP地址之后,利用对应的控制进程停止对应设备的测试监控功能。

步骤S166,删除测试设备对应的测试控制器。

在一种可选的方案中,测试服务器在停止测试设备的测试监控功能之后,可以删掉该测试设备对应的控制进程,并通知Web前段更新测试状态。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。当测试人员需要结束游戏测试时,可以通过Web前端向测试功能服务器发送停止指令,停止指令可以包括需要结束游戏测试的智能手机的IP地址,例如,智能手机2的IP地址和智能手机3的IP地址。测试功能服务器在接收到停止指令之后,确定智能手机2和智能手机3需要停止游戏测试,则通过控制进程2停止智能手机2,通过控制进程3停止智能手机3,删除控制进程2和控制进程3,并通知Web前段可以更新智能手机2和智能手机3的测试状态。

通过上述步骤S162至步骤S166,测试人员可以通过用户前端启动测试,或者停止测试,在测试停止之后,删除测试控制器,节省测试功能服务器的资源。

根据本发明上述实施例,步骤S1064,对测试数据进行处理,得到至少一个测试设备的测试结果,可以包括如下步骤:

步骤S10642,对测试数据进行处理,得到至少一个测试设备的测试结果。

步骤S10644,将至少一个测试设备的测试结果转换为预设格式,并将格式转换后的测试结果保存至数据库中。

具体的,上述步骤S10644中的预设格式可以是用户前端需要的文档组织格式,例如可以是json格式。格式转换后的测试结果可以包含测试的场景名称,测试时的阈值配置信息,以及以列表形式标识的测试数据,测试数据按照时间前后进行排序。

在一种可选的方案中,在停止测试之后,后台数据处理器可以在数据收集服务器完成测试数据标记和存储之后,读取数据库中存储的测试数据,对读取到的测试数据进行分片、转换和调整,构成Web前端需要的数据格式,并存储到数据库中供Web前端进行使用。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。后台数据处理器在从数据库中读取到数据收集服务器存储的游戏数据之后,可以对游戏数据进行分片、转换和调整,并构造json格式的文档,从而实现游戏数据和真实游戏场景之间的对应,方便开发和测试人员快速准确的定位游戏中存在问题的位置和上下文,从而实现达到快速修复问题。

通过上述步骤S10642至步骤S10644,对测试数据进行处理和格式转换,得到用户前端需要的测试结果,从而实现测试人员可以从用户前端查看测试结果,无需人工进行处理。

根据本发明上述实施例,步骤S106,对测试数据进行处理,得到至少一个测试设备的测试结果可以包括如下步骤:

步骤S1066,按照时间划分点,对测试数据进行划分。

在一种可选的方案中,后台数据处理器可以在读取到测试数据之后,将时间上连续的测试数据,按照场景的跳转时间点,将测试数据划分为多个部分,每个部分属于一个测试场景。

步骤S1068,将划分后的测试数据进行坐标转换。

在一种可选的方案中,后台数据处理器可以将采集到的3维坐标按照3维坐标到2维坐标的转换算法,对坐标进行转换。

步骤S1060,将坐标转换后的测试数据进行压缩,得到至少一个测试设备的测试结果。

在一种可选的方案中,后台数据处理器可以对采集到的场景图片数据,进行压缩,将转换和分片后的测试数据进行重新组织和存储。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。后台数据处理器可以在读取到游戏数据之后,将时间上连续的游戏数据,按照游戏场景的跳转时间点,将游戏数据划分为多个部分,每个部分属于一个游戏场景,按照游戏3维坐标到俯瞰图2维坐标的转换算法,对坐标进行转换,对采集到的游戏场景图片数据,进行压缩,将转换和分片后的测试数据进行重新组织和存储。

通过上述步骤S1066至步骤S1068,可以对每个测试设备的测试数据进行划分、坐标转换和压缩,得到每个测试设备的测试结果。

根据本发明上述实施例,在测试请求还包括:实时测试的情况下,每个测试控制器加载实时监控模块至对应的测试设备。

根据本发明上述实施例,在步骤S106,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果之后,上述方法还可以包括如下步骤:

步骤S172,发送每个测试设备的测试结果至用户前端,其中,用户前端按照预设显示方式,显示每个测试设备的测试结果。

具体的,上述步骤S172中的预设显示方式可以是数据联动方式,显示页面上包含了时间数据,玩家位置的空间数据,以及时间点对应的游戏截图数据。点击其中的一个数据,可以自动刷新其他数据的显示到对应的点。如:选择某个时间点,位置会更新到这个时间点所在位置,截图也会刷新显示为这个时间点附近的截图。

在一种可选的方案中,用户前端可以使用mongodb的API,根据数据组织结构,来读取数据库中的数据,以各种数据联动的方式展示在网页上,以便用户可以查看历次测试结果和数据,从而更加快速准确的定位游戏中存在问题的位置和上下文,即在该位置前后,游戏中发生的事件,资源创建和加载信息。

通过上述步骤S172,用户前端可以显示每个测试设备的测试结果,从而实现了对测试数据的自动处理和展示,避免了每次测试都要书写一些处理脚本的问题,结构统一,具备通用性。

根据本发明上述实施例,接收用户前端发送的状态请求,并返回至少一个测试设备的测试状态至用户前端,其中,用户前端可以设置定时器,当定时器的计时时间到达预设时间时,发送状态请求,测试状态至少包括如下之一:未开始测试,测试中,测试数据处理完成。

在一种可选的方案中,测试人员可以在Web前端设置一个timer定时器,当超过一段时间后,定时器被触发,Web前端调用一个请求,向测试功能服务器查询每个测试设备的测试状态的请求,获得每个测试设备的最新状态,通过Web前端查看每个测试设备当前的测试状态。

通过上述方案,Web前端可以定时向测试控制器查询并更新测试状态,方便测试人员确定每个测试设备的状态,实现测试过程的可视化。

下面结合图2所示,对本发明一种优选的测试数据的处理方法进行详细说明,如图2所示,该方法可以包括如下步骤:

步骤S21,Web端设置多个测试设备的IP地址和测试性能数据阈值。

可选的,测试人员在web端可以可视化查看以往的测试数据,包括测试的时间、测试人、测试的哪个游戏场景、在各个时间点和场景位置点的各种性能数据、各个点触发的游戏事件、各个点加载的游戏资源、低于设置测试阈值的点的游戏截图等。测试人员可以在Web端设置多个测试设备的IP,本次测试性能数据阈值,是否为实施测试的标记,是否开启截图的标记等参数。

步骤S22,Web端生成RPC请求发送给测试功能服务器。

可选的,测试人员在Web端设置多个测试设备的IP地址和本次测试性能数据阈值之后,可以点击执行一项测试,Web端可以调用命令并将多个测试设备的IP地址和测试性能数据阈值传递到测试功能服务器RPC Server。

步骤S23,测试功能服务器根据IP地址检测多个测试设备是否被占用。

可选的,测试功能服务器RPC Server检测用户要测试的设备是否可以进行测试。如果该设备被占用,进入步骤S211,返回用户一条错误消息,并提示错误原因。如果设备可以执行测试,则进入步骤S24。

步骤S24,测试功能服务器生成测试控制器,加载监控模块到多个测试设备。

可选的,则测试功能服务器生成一个测试控制器Worker,全程控制对测试设备的测试,测试控制器Worker启动后首先将监控模块装载到设备上。

步骤S25,测试功能服务器验证监控模块是否加载成功。

可选的,测试控制器Worker验证验证装载过程的问题,并返回给测试功能服务器。如果成功装载,则进入步骤S26;如果装载失败,则进入步骤S211,返回失败的具体信息到Web前端,Web前端提示用户并记录本次失败信息。

步骤S26,监控模块收集测试数据并发送给数据收集服务器。

可选的,监控模块会自动将游戏测试过程中收集到的数据适时地发送到数据收集服务器上,数据收集服务器将数据加以整理和保存。监控模块在游戏实际运行的过程中,每隔一段时间收集一次数据,并在游戏不忙的时刻,将收集到的测试数据间歇性地发送出去,避免影响游戏性能。

步骤S27,数据收集服务器存储测试数据。

可选的,数据收集服务器在接收到数据后,将测试数据暂时放入内存中缓存,以便尽快响应监控模块,避免影响游戏性能;在游戏测试完成或没有数据接受的间歇,将数据保存到数据库。

步骤S28,Web端是否停止测试。

可选的,如果Web端停止测试,则进入步骤S29;如果Web端未停止测试,则进入步骤S26。

步骤S29,后台处理服务器处理数据并存储。

可选的,在用户在web前端停止本次测试后,RPC Server利用Worker停止设备的测试监控功能,并删除掉对应的Worker,通知web前端更新测试状态。然后后台数据处理服务器在数据收集服务器完成处理后,读取出原始的测试数据,对其加以整理,转换,压缩等操作,构造成前端web系统使用的数据格式,存入到数据库中供前端Web系统进行使用。

此处需要说明的是,不同种类的监控模块会将数据发送到不同种类的数据收集服务器上(实时和非实时)。如果用户选择启动的是实时测试,则Worker加载的监控模块就是实时监控模块,该监控模块是将收集到的数据发送到实时数据收集服务器的,实时数据收集服务器在设计上融合了数据收集服务器和后台处理器的功能,并能实时地将测试数据保存到数据库中,供web前端系统实时地查看测试进度。

步骤S210,Web前端读取并显示测试数据。

可选的,在测试进行过程中,Web前端会定时向Worker查询并更新测试状态,测试人员可以在Web前端查看自己名下的各个测试设备的测试状态。Web前端可以从数据库中读取测试数据并按照联动方式显示在网页上。

步骤S211,Web端提示失败信息。

可选的,如果测试设备被占用,无法进行测试,或者监控模块加载失败,则返回失败信息,Web端显示失败信息,提示用户测试设备被占用,或者监控模块加载失败。

通过上述步骤S21至步骤S211,可以将游戏测试过程中的数据采集,存储,设备管理,数据处理和表现这些过程都统一起来,,将各个阶段的处理串联起来,节省了测试人员的工作时间,让他们从琐碎的测试工作中解放出来,实现测试数据和真实游戏场景之间的对应,方便开发和测试人员快速准确的定位游戏中存在问题的位置和上下文,从而快速修复问题,提高项目的开发迭代速度。

本发明上述实施例提供的方案具有以下优点:

(1)简化测试人员,开展测试,收集测试数据,处理测试数据,进行合理展示的过程,变成一个简单的点击操作流程,测试完成后直接查看结果,节省了测试人员的时间,提高了工作效率。

(2)可以支持多个用户和设备同时开展测试,由于游戏测试一般时间较长,并行执行多项测试可以更好的节约测试时间,方便项目组内对测试过程的集中开展。也可以支持到需要多人在线同时测试的情形,使得其可以作为一个游戏测试数据平台的方案,组织多款游戏和众多的测试人员和设备,以测试服务的形式加以提供,进一步降低其他项目的测试成本。

(3)测试后,实现了对测试数据的自动处理和展示,避免了每次测试都要书写一些处理脚本的问题,结构统一,具备通用性。

实施例2

根据本发明实施例,提供了一种测试数据的处理装置的装置实施例。

图3是根据本发明实施例的一种测试数据的处理装置的示意图,如图3所示,该装置包括如下模块:接收模块31,控制模块33和处理模块35。

其中,接收模块31用于接收用户前端发送的测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息;控制模块33用于根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试;处理模块35用于获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

具体的,上述的测试请求可以是RPC请求(远程过程调用请求,Remote ProcedureCall的简写)。用户前端可以是前端交互和展示系统,即Web前端,可以是计算机终端,移动终端,例如,PC、智能手机(包括:Android手机和iOS手机)、平板电脑、iPad等终端,但不仅限于此。上述至少一个测试设备的标识信息可以是测试设备的唯一标识,例如,可以是IP地址、MAC地址等。上述的测试可以是游戏测试(例如计算机端的游戏测试,移动设备端的游戏测试等),软件测试和程序测试等,测试设备上可以提前安装需要进行测试的游戏,软件或者程序。当进行游戏测试时,上述的测试数据可以包括游戏数据、性能数据和游戏截图等,例如,可以是游戏运行时的CPU占比,内存消耗大小,渲染帧率,游戏玩家的游戏位置,所在游戏场景等可以标识当前游戏测试点和游戏性能信息的数据。

此处需要说明的是,上述接收模块31,控制模块33和处理模块35对应于实施例一中的步骤S102至步骤S106,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。

由上可知,本发明上述实施例二公开的方案中,通过接收模块接收用户前端发送的测试请求,通过控制模块根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,通过处理模块获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果,从而实现对测试数据的采集和处理的目的。

容易注意到,由于测试设备可以是多个,可以支持多个用户和设备同时开展测试,由于游戏测试一般时间较长,并行执行多项测试可以更好的节约测试时间,方便项目组内对测试过程的集中开展。在进行测试的过程中,可以采集测试数据,并对测试数据进行处理,无需人工对测试过程进行干预,简化测试人员的工作。因此,通过本发明实施例所提供的方案,可以达到节省测试时间,提高工作效率,降低测试成本的效果。

由此,本发明提供的上述实施例二的方案解决了现有技术中的测试数据的处理方法,测试时间长,工作效率低的技术问题。

实施例3

根据本发明实施例,提供了一种测试数据的处理系统的系统实施例。

图4是根据本发明实施例的一种测试数据的处理系统的示意图,如图4所示,该系统包括:

至少一个测试设备41,用于执行测试。

用户前端43,用于发送测试请求,其中,测试请求至少包括:至少一个测试设备的标识信息。

具体的,上述的测试请求可以是RPC请求(远程过程调用请求,Remote ProcedureCall的简写)。用户前端可以是前端交互和展示系统,即Web前端,可以是计算机终端,移动终端,例如,PC、智能手机(包括:Android手机和iOS手机)、平板电脑、iPad等终端,但不仅限于此。上述至少一个测试设备的标识信息可以是测试设备的唯一标识,例如,可以是IP地址、MAC地址等。

在一种可选的方案中,前端交互和展示系统Web前端,提供了查看测试结果的可视化展示,开始测试,停止测试,查看测试状态,开始实时测试,停止实时测试,实时查看实时测试的反馈结果,用户管理,测试数据的分用户和权限管理,管理员操作等功能。当测试人员需要进行测试时,可以根据一个或多个测试设备的IP地址,通过前端交互和展示系统生成发出RPC请求,并将RPC请求发送给测试处理服务端开始测试。

测试处理服务端45,分别与用户前端和至少一个测试设备具有通信关系,用于根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果。

具体的,上述的测试可以是游戏测试(例如计算机端的游戏测试,移动设备端的游戏测试等),软件测试和程序测试等,测试设备上可以提前安装需要进行测试的游戏,软件或者程序。具体的,当进行游戏测试时,上述的测试数据可以包括游戏数据、性能数据和游戏截图等,例如,可以是游戏运行时的CPU占比,内存消耗大小,渲染帧率,游戏玩家的游戏位置,所在游戏场景等可以标识当前游戏测试点和游戏性能信息的数据。

在一种可选的方案中,测试处理服务端可以与前端交互和展示系统,以及一个或多个测试设备通过网络进行连接,测试处理服务端可以接收前端交互和展示系统发出的RPC请求,解析得到请求中的测试设备的IP地址,并根据相应的测试设备的IP地址,控制各个测试设备启动,并进行相应的测试。测试处理服务端可以采集每个测试设备在游戏测试过程中,生成的游戏数据,并在游戏测试结束之后,对采集到的全部游戏数据进行处理,生成全部游戏数据对应的测试结果;或者在游戏测试的过程中实时对采集到的游戏数据进行处理,生成游戏数据对应的测试结果。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。当游戏测试人员需要在移动设备端的游戏进行测试时,可以预先在3个智能手机上安装相应的游戏,智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3,可以通过Web端生成包含3个智能手机的IP地址的RPC请求,并通过Web端发送给测试处理服务端,测试处理服务端在接收到IP地址1、IP地址2和IP地址3之后,可以通过IP地址1,与智能手机1进行连接,通过IP地址2,与智能手机2进行连接,通过IP地址3,与智能手机3进行连接,控制3个智能手机启动游戏,进行游戏测试。当在游戏运行的过程中,3个智能手机可以生成游戏数据,测试处理服务端可以实时采集3个智能手机生成的游戏数据,并对3个智能手机生成的游戏数据进行处理,得到3个智能手机的测试结果。

由上可知,本发明上述实施例三公开的方案中,测试处理服务端接收用户前端发送的测试请求,根据至少一个测试设备的标识信息,控制至少一个测试设备进行测试,获取至少一个测试设备的测试数据,并对测试数据进行处理,得到至少一个测试设备的测试结果,从而实现对测试数据的采集和处理的目的。

容易注意到,由于测试设备可以是多个,可以支持多个用户和设备同时开展测试,由于游戏测试一般时间较长,并行执行多项测试可以更好的节约测试时间,方便项目组内对测试过程的集中开展。在进行测试的过程中,可以采集测试数据,并对测试数据进行处理,无需人工对测试过程进行干预,简化测试人员的工作。因此,通过本发明实施例所提供的方案,可以达到节省测试时间,提高工作效率,降低测试成本的效果。

由此,本发明提供的上述实施例三的方案解决了现有技术中的测试数据的处理方法,测试时间长,工作效率低的技术问题。

根据本发明上述实施例,上述测试处理服务端可以包括:

测试服务器,与用户前端连接,用于生成与至少一个测试设备对应的测试控制器,其中,每个测试控制器加载监控模块至对应的测试设备。

具体的,上述的测试服务器可以是测试功能服务器,测试控制器可以是控制进程,可以控制和维护测试设备上进行测试的测试状态和测试进度,发送相关执行,接收和处理状态信息。

在一种可选的方案中,如图5所示,测试处理服务端可以包括:测试功能服务器,其中,测试功能服务器提供对启动测试,停止测试,查询测试状态,生成销毁测试控制器的功能。测试控制器负责加载监控模块,注入到设备,启动设备的测试,停止设备的测试,检测设备的连接状态。测试功能服务器在接收到用户前端发送的至少一个测试设备的IP地址之后,可以为每个测试设备生成测试控制器,全程控制对测试设备的测试,即对每个测试设备生成一个软件控制器,即控制进程,控制进程可以加载监控模块到IP地址制定的测试设备上。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试服务器在接收到智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3之后,可以生成3个控制进程,即控制进程1,控制进程2和控制进程3,控制进程1加载监控模块1到智能手机1上,控制进程2加载监控模块2到智能手机2上,控制进程3加载监控模块3到智能手机3上。

通过上述方案,可以通过为每个测试设备生成一个测试控制器,实现多个测试设备同时进行测试的目的。

根据本发明上述实施例,测试处理服务端还可以包括:

至少一个监控模块,用于定时采集对应的测试设备的测试数据,其中,测试数据至少包括如下之一:每个测试设备在测试过程中占用处理器的占用率,消耗内存的大小,渲染帧率,位置数据,场景数据;

数据处理服务器,与至少一个监控模块具有通信关系,用于对测试数据进行处理,得到每个测试设备的测试结果。

具体的,上述的数据处理服务器可以是后台数据处理器。

在一种可选的方案中,如图5所示,测试处理服务端还可以包括:监控模块和后台数据处理,其中,监控模块实现了在设备上监控游戏运行状况,收集游戏相关数据,组织数据并适时向数据收集服务器发送测试数据;后台数据处理服务器负责对采集的数据进行分片,转换和调整,构造成前端交互和展示系统需要的数据格式进行保存。同时对游戏截图,游戏场景地图等进行处理并保存。在测试设备进行测试的过程中,每个监控模块可以收集游戏相关数据,并根据需要在适合的时候发送给后台数据处理器,数据处理服务器可以在测试结束之后,对每个监控模块发送的测试数据进行处理,得到每个测试设备的测试结果。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。在3个智能手机运行游戏的过程中,监控模块1可以收集智能手机1生成的游戏数据,发送给后台数据处理器;监控模块2可以收集智能手机2生成的游戏数据,发送给后台数据处理器;监控模块3可以收集智能手机3生成的游戏数据,发送给后台数据处理器,后台数据处理器可以对监控模块1发送的游戏数据进行处理,得到智能手机1的测试结果;可以对监控模块2发送的游戏数据进行处理,得到智能手机2的测试结果;可以对监控模块3发送的游戏数据进行处理,得到智能手机3的测试结果。

通过上述方案,可以通过监控模块采集测试数据,并通过数据处理服务器对测试数据进行处理,将每个服务器实现的功能分离,减轻每个服务器的处理负担,提升工作效率。

根据本发明上述实施例,上述测试处理服务端还可以包括:

数据收集服务器,与至少一个监控模块具有通信关系,用于接收至少一个监控模块发送的测试数据,对测试数据进行标记,并将标记后的测试数据进行存储。

在一种可选的方案中,如图5所示,测试处理服务端还可以包括数据收集服务器,其中,数据收集服务器负责接收一个或多个在测的设备发送来的测试数据,对测试数据进行管理和标识,并对测试设备进行存储。数据收集服务器与多个测试设备进行连接,可以接收每个测试设备上加载的监控模块发送的测试数据。数据收集服务器可以根据测试数据和测试设备之间的关系,对接收到的每条测试数据进行标记,标记该条测试数据来自哪个测试设备,并将标记后的测试数据进行存储,存储到与数据收集服务器连接的数据库中。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。数据收集服务器在接收到监控模块1发送的测试数据1和测试数据2,监控模块2发送的测试数据3,测试数据4和测试数据5,以及监控模块3发送的测试数据6之后,对每条测试数据进行标记,标记测试数据1来自智能手机1,测试数据2来自智能手机1,测试数据3来自智能手机2,测试数据4来自智能手机2,测试数据5来自智能手机2,以及测试数据6来自智能手机3,并将标记后的测试数据1、测试数据2、测试数据3、测试数据4、测试数据5和测试数据6存储到数据库中。

通过上述方案,数据收集服务器可以接收所有测试数据,并进行整理存储,将数据收集服务器和后台数据处理服务器进行分离,可以降低测试数据的传输时间,缩短测试时间,减轻每个服务器的处理负担,提升工作效率。

根据本发明上述实施例,在测试请求还包括:实时测试的情况下,每个测试控制器加载实时监控模块至对应的测试设备。

在一种可选的方案中,如图5所示,测试人员在通过Web前端发送RPC请求时,还可以同时发送是否进行实时测试的标记,测试功能服务器在接收到RPC请求之后,可以根据标记判断是否需要启动实时测试,如果测试人员选择进行实时测试,测试功能服务器确定需要启动实时测试,则控制进程加载实时监控模块到测试设备上。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。测试服务器在接收到智能手机1的IP地址1,智能手机2的IP地址2和智能手机3的IP地址3之后,可以生成3个控制进程,即控制进程1,控制进程2和控制进程3,控制进程1加载实时监控模块1到智能手机1上,控制进程2加载实时监控模块2到智能手机2上,控制进程3加载实时监控模块3到智能手机3上。

通过上述方案,控制进程根据实时测试请求,加载实时监控模块到测试设备,从而实现实时查看测试结果的目的。

根据本发明上述实施例,测试处理服务端还可以包括:

至少一个实时监控模块,用于在测试请求还包括:实时测试的情况下,实时采集对应的测试设备的测试数据,其中,测试数据至少包括如下之一:每个测试设备在测试过程中占用处理器的占用率,消耗内存的大小,渲染帧率,位置数据,场景数据;

实时数据收集服务器,与至少一个实时监控模块具有通信关系,用于对测试数据进行处理,得到至少一个测试设备的测试结果。

具体的,上述的实时数据收集服务器在设计上融合了数据收集服务器和后台数据处理器的功能。

在一种可选的方案中,如图5所示,测试处理服务端还可以实时监控模块和实时数据收集服务器。在测试设备进行测试的过程中,每个实时监控模块可以实时收集游戏相关数据,并实时发送给实时数据收集服务器,实时数据收集服务器可以实时对每个监控模块发送的测试数据进行分片、转换和调整,得到每个测试设备的测试结果,并存储在数据库中。

例如,仍以测试设备为3个智能手机,测试为移动设备端的游戏测试为例,对本发明上述实施例进行详细说明。在3个智能手机运行游戏的过程中,监控模块1可以收集智能手机1生成的游戏数据,发送给后台数据处理器;监控模块2可以收集智能手机2生成的游戏数据,发送给后台数据处理器;监控模块3可以收集智能手机3生成的游戏数据,发送给后台数据处理器,后台数据处理器可以对监控模块1发送的游戏数据进行分片、转换和调整,得到智能手机1的测试结果;可以对监控模块2发送的游戏数据进行分片、转换和调整,得到智能手机2的测试结果;可以对监控模块3发送的游戏数据进行分片、转换和调整,得到智能手机3的测试结果。

通过上述方案,实时监控模块可以实时发送收集到的测试数据,实时数据收集服务器可以实时对接收到的测试数据进行处理,从而实现实时查看测试结果的目的。

根据本发明上述实施例,用户前端还用于设置定时器,当定时器的计时时间到达预设时间时,发送状态请求,并接收测试处理服务端返回的至少一个测试设备的测试状态,测试状态至少包括如下之一:未开始测试,测试中,测试数据处理完成。

在一种可选的方案中,测试人员可以在Web前端设置一个timer定时器,当超过一段时间后,定时器被触发,Web前端调用一个请求,向测试功能服务器查询每个测试设备的测试状态的请求,获得每个测试设备的最新状态,通过Web前端查看每个测试设备当前的测试状态。

通过上述方案,Web前端可以定时向测试控制器查询并更新测试状态,方便测试人员确定每个测试设备的状态,实现测试过程的可视化。

此处需要说明的是,本发明上述实施例中的前端交互和展示系统,测试功能服务器,数据收集服务器,可以部署在同一台服务器上,也可以分布于多台主机进行部署,因此,具有分布式特性。测试设备可以是PC,手机,pad等联网的计算设备。本发明的技术架构并不对底层的连接技术有依赖,使得本发明的设计可以应用于众多的游戏引擎和硬件平台,具有提供测试服务的普遍性和一般性,可以大量推广使用。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1