Monkey测试方法、装置、终端设备及存储介质与流程

文档序号:16531568发布日期:2019-01-05 10:47阅读:184来源:国知局
Monkey测试方法、装置、终端设备及存储介质与流程

本申请涉及软件测试技术领域,尤其涉及一种monkey测试方法、装置、终端设备及存储介质。



背景技术:

monkey测试用于测试应用程序的稳定性,以及,应用程序与终端设备的兼容性,通常monkey测试为:通过运行在终端设备中的测试程序以生成随机的伪输入事件,如点击操作、触摸操作或者滑动操作等。其中,若此时应用程序出错闪退,则说明该应用程序存在漏洞(bug),或者说明该应用程序与终端设备不兼容。

如上所述,现有技术通过测试程序可以自动触发伪输入事件,而实际上待测试界面(上述应用程序对应的界面)可能存在一些“空白区域”,所谓空白区域是指当终端设备执行该区域上的伪输入事件时,终端不做任何响应。而这种在空白区域中的测试势必造成测试效率低的问题。



技术实现要素:

本发明实施例提供一种monkey测试方法、装置、终端设备及存储介质,从而可以提高测试效率。

第一方面,本发明实施例提供一种monkey测试方法,包括:显示待测试界面;确定位于待测试界面中的第一可操作区域;生成在第一可操作区域上的第一伪随机事件,并执行第一伪随机事件。

本发明实施例的有益效果包括:通过该方法使得终端设备不会在空白区域中执行伪随机操作,进而提高终端设备的测试效率。

可选地,生成在第一可操作区域上的第一伪随机事件,包括:删除待测试界面中的无效区域,无效区域为待测试界面中除第一可操作区域之外的区域;生成在经过删除之后的待测试界面上的第一伪随机事件。通过该方法可以有效的确定第一可操作区域,使得终端设备不会在空白区域中执行伪随机操作,进而提高终端设备的测试效率。

可选地,确定位于待测试界面中的第一可操作区域,包括:确定位于待测试界面中的当前可操作控件;根据当前可操作控件确定第一可操作区域。

可选地,根据当前可操作控件确定第一可操作区域,包括:将当前可操作控件所占用的区域确定为第一可操作区域;或者,将以当前可操作控件为中心,且与当前可操作控件距离小于预设距离的坐标点构成的区域确定为第一可操作区域。

可选地,生成在第一可操作区域上的第一伪随机事件,并执行第一伪随机事件之后,还包括:确定第一伪随机事件对应的位置坐标;根据位置坐标和预设阈值确定位于待测试界面中的第二可操作区域;生成在第二可操作区域上的第二伪随机事件,并执行第二伪随机事件。

基于此,终端设备可以执行多次monkey测试,每次monkey测试的可操作区域均不是之前monkey测试中的可操作区域,基于此,monkey测试不会集中在待测试界面中的某一个或几个区域,即提高了测试覆盖度,进而提高了测试的有效性。

可选地,根据位置坐标和预设阈值确定位于待测试界面中的第二可操作区域,包括:根据预设阈值确定区域半径;将以位置坐标为中心,区域半径为半径的区域确定为预设区域;将待测试界面中除预设区域之外的区域确定为第二可操作区域。通过该方法可以有效的确定第二可操作区域。

可选地,第一伪随机事件为点击操作、触摸操作或滑动操作;第二伪随机事件为点击操作、触摸操作或滑动操作。

下面将提供一种monkey测试装置、终端设备、存储介质及计算机程序产品,其内容和效果可参考方法部分,本发明实施例对此不再赘述。

第二方面,本发明实施例提供一种monkey测试装置,包括:

显示模块,用于显示待测试界面。

第一确定模块,用于确定位于待测试界面中的第一可操作区域。

第一生成模块,用于生成在第一可操作区域上的第一伪随机事件,并执行第一伪随机事件。

可选地,第一生成模块具体用于删除待测试界面中的无效区域,无效区域为待测试界面中除第一可操作区域之外的区域。生成在经过删除之后的待测试界面上的第一伪随机事件。

可选地,第一确定模块具体用于:确定位于待测试界面中的当前可操作控件。根据当前可操作控件确定第一可操作区域。

可选地,第一确定模块具体用于:将当前可操作控件所占用的区域确定为第一可操作区域。或者,将以当前可操作控件为中心,且与当前可操作控件距离小于预设距离的坐标点构成的区域确定为第一可操作区域。

可选地,该装置还包括:

第二确定模块,用于确定第一伪随机事件对应的位置坐标。

第三确定模块,用于根据位置坐标和预设阈值确定位于待测试界面中的第二可操作区域。

第二生成模块,用于生成在第二可操作区域上的第二伪随机事件,并执行第二伪随机事件。

可选地,第三确定模块具体用于:根据预设阈值确定区域半径。将以位置坐标为中心,区域半径为半径的区域确定为预设区域。将待测试界面中除预设区域之外的区域确定为第二可操作区域。

第三方面,本发明实施例提供一种终端设备,包括:显示器、处理器和存储器;显示器用于显示待测试界面;存储器用于存储处理器的可执行指令,以使处理器实现如第一方面或第二方面的可选方式的monkey测试方法。

第四方面,本发明实施例提供一种计算机存储介质,包括:计算机指令,计算机指令用于实现如第一方面或第二方面的可选方式的monkey测试方法。

第五方面,本发明实施例提供一种计算机程序产品,包括:计算机指令,计算机指令用于实现如第一方面或第二方面的可选方式的monkey测试方法。

本发明实施例提供一种monkey测试方法、装置、终端设备及存储介质,从而可以提高测试效率。一方面,通过该方法使得终端设备不会在空白区域中执行伪随机操作,进而提高终端设备的测试效率。另一方面,终端设备可以执行多次monkey测试,每次monkey测试的可操作区域均不是之前monkey测试中的可操作区域,基于此,monkey测试不会集中在待测试界面中的某一个或几个区域,即提高了测试覆盖度,进而提高了测试的有效性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明一实施例提供的应用界面的示意图;

图2为本申请一实施例提供的monkey测试方法的流程图;

图3为本发明另一实施例提供的应用界面的示意图;

图4为本申请另一实施例提供的monkey测试方法的流程图;

图5为本申请再一实施例提供的monkey测试方法的流程图;

图6为本发明一实施例提供的一种monkey测试装置的示意图;

图7为本发明一实施例提供的一种终端设备的示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

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

如上所述,现有技术通过测试程序可以自动触发伪输入事件,而实际上待测试界面(上述应用程序对应的界面)可能存在一些“空白区域”,例如图1为本发明一实施例提供的应用界面的示意图,如图1所示,该应用界面是计算器应用界面,该界面上的数据显示区域11为空白区域。由于对空白区域上的操作无效,因此这种在空白区域中的测试势必造成测试效率低的问题。

为了解决上述技术问题,本发明实施例提供一种monkey测试方法、装置、终端设备及存储介质。本申请的应用场景为:终端设备已安装应用程序,该应用程序可以是购物应用(application,app)、游戏app、打车app或者是上述的计算器app等,终端设备通过加载的测试程序实现对应用程序的测试。

其中,该终端设备可以是智能手机,平板电脑,个人计算机(personalcomputer,pc)、游戏控制台或者模拟器等。

实施例一

图2为本申请一实施例提供的monkey测试方法的流程图,该方法的执行主体可以是monkey测试装置,该装置可以是终端设备的部分或者全部,下面以该方法的执行主体是终端设备为例对monkey测试方法进行说明。如图2所示,该方法包括如下步骤:

步骤s21:终端设备显示待测试界面。

步骤s22:终端设备确定位于待测试界面中的第一可操作区域。

步骤s23:终端设备生成在第一可操作区域上的第一伪随机事件,并执行所述第一伪随机事件。

其中,所述待测试界面为待测试app对应的界面,例如:图1所示的计算器界面为计算器app对应的界面。

可选地,在步骤s21之前:终端设备还可以获取对待测试app的操作,以使终端设备显示待测试界面。其中,对待测试app的操作可以是点击操作、触摸操作或者滑动操作等,本发明实施例对此不做限制。

针对步骤s22进行说明:

一种可选方式:终端设备确定位于待测试界面中的当前可操作控件,可选地,在终端设备确定位于待测试界面中的当前可操作控件之前,终端设备可在待测试界面中预先配置所述当前可操作控件。

进一步地,终端设备根据当前可操作控件确定第一可操作区域。可选地,终端设备根据当前可操作控件确定第一可操作区域,包括:终端设备将当前可操作控件所占用的区域确定为第一可操作区域;或者,将以当前可操作控件为中心,且与当前可操作控件距离小于预设距离的坐标点构成的区域确定为第一可操作区域。

例如:图3为本发明另一实施例提供的应用界面的示意图,如图3所示,当前可操作控件包括:控件9,控件5和控件6。进一步地,终端设备可以将所述当前可操作控件所占用的区域确定为所述第一可操作区域,例如控件9所占用的区域为第一可操作区域31。或者,终端设备将以所述当前可操作控件为中心,且与所述当前可操作控件距离小于预设距离的坐标点构成的区域确定为所述第一可操作区域,这种情况下,该第一可操作区域为圆形,实际上,该第一可操作区域还可以是矩形或其他多边形等,例如:如图3所示,控件5和控件6对应一个第一可操作区域31,该第一可操作区域31的形状为矩形。本发明实施例对第一可操作区域的形状不做限制。

另一种可选方式:终端设备无需确定当前可操作控件,而是在待测试界面中删除边缘区域,剩下的区域作为第一可操作区域。该边缘区域可以是待测试的以下至少一项:左边缘区域、右边缘区域、上边缘区域、下边缘区域。

针对步骤s23进行说明:

所述第一伪随机事件为点击操作、触摸操作或滑动操作;例如:结合图3所示的界面图,该第一伪随机事件可以是对控件9的点击操作。

需要说明的是,本发明实施例所述的控件均是指虚拟控件。

总之,本发明实施例提供一种monkey测试方法,包括:终端设备显示待测试界面,终端设备确定位于待测试界面中的第一可操作区域,终端设备生成在第一可操作区域上的第一伪随机事件,并执行所述第一伪随机事件。从而使得终端设备不会在空白区域中执行伪随机操作,进而提高终端设备的测试效率。

实施例二

针对步骤s23进行如下说明:

一种可选方式,终端设备直接在确定的第一可操作区域上生成第一伪随机事件,并执行所述第一伪随机事件。

另一种可选方式:图4为本申请另一实施例提供的monkey测试方法的流程图,该方法的执行主体可以是monkey测试装置,该装置可以是终端设备的部分或者全部,下面以该方法的执行主体是终端设备为例对monkey测试方法进行说明。如图4所示,上述步骤s23包括如下步骤:

步骤s231:终端设备删除待测试界面中的无效区域,该无效区域为待测试界面中除第一可操作区域之外的区域。

步骤s232:终端设备生成在经过删除之后的待测试界面上的第一伪随机事件,并执行所述第一伪随机事件。

需要说明的是,所述无效区域可以为上述空白区域,或者,上述无效区域包括上述空白区域,例如:如图1所示,空白区域为数据显示区域11,假设第一可操作区域包括控件9所占用的区域、控件5所占用的区域以及控件6所占用的区域,则无效区域除了包括上述数据显示区域之外,还包括如控件1、控件2等所占用的区域。

所述第一伪随机事件为点击操作、触摸操作或滑动操作;例如:结合图3所示的界面图,该第一伪随机事件可以是对控件9的点击操作。

在本发明实施例中,终端设备删除待测试界面中的无效区域,终端设备生成在经过删除之后的待测试界面上的第一伪随机事件,并执行所述第一伪随机事件。从而使得终端设备不会在空白区域中执行伪随机操作,进而提高终端设备的测试效率。

实施例三

以实施例一或实施例二为基础,进一步地,图5为本申请再一实施例提供的monkey测试方法的流程图,该方法的执行主体可以是monkey测试装置,该装置可以是终端设备的部分或者全部,下面以该方法的执行主体是终端设备为例对monkey测试方法进行说明。如图5所示,在步骤s23之后该方法还包括如下步骤:

步骤s24:终端设备确定第一伪随机事件对应的位置坐标。

步骤s25:终端设备根据位置坐标和预设阈值确定位于待测试界面中的第二可操作区域。

步骤s26:终端设备生成在第二可操作区域上的第二伪随机事件,并执行第二伪随机事件。

如上所述,第一伪随机事件可以为点击操作、触摸操作或滑动操作。基于此,所谓第一伪随机事件对应的位置坐标是指点击操作、触摸操作或滑动操作在终端设备中的操作位置的坐标。

针对步骤s25进行如下说明:

一种可选方式:终端设备将预设阈值直接作为区域半径,将以所述位置坐标为中心,所述区域半径为半径的区域确定为预设区域;将所述待测试界面中除所述预设区域之外的区域确定为所述第二可操作区域。

另一种可选方式:终端设备根据所述预设阈值确定区域半径;将以所述位置坐标为中心,所述区域半径为半径的区域确定为预设区域;将所述待测试界面中除所述预设区域之外的区域确定为所述第二可操作区域。

其中,上述的预设阈值可以是根据实际情况配置。

需要说明的是,步骤s24至步骤s26可以被理解为一次monkey测试,实施例一或实施例二也可以被理解为一次monkey测试。如果在步骤s24至步骤s26之前执行了多次monkey测试时,上述确定第二可操作区域的方法为:针对当前的monkey测试之前的任一次monkey测试(为了方便起见,将该任一次monkey测试称为目标monkey测试)均可以确定预设区域,例如:终端设备根据所述预设阈值确定区域半径;将以目标monkey测试中的位置坐标为中心,所述区域半径为半径的区域确定为预设区域。其中,该区域半径还可以和目标monkey测试是第几次测试有关。例如:假设预设阈值为k,当前monkey测试为第n次测试,至少一个区域半径包括:k(1-(n-1)m)、k(1-(n-2)m)、k(1-(n-3)m)……k(1-(n-(n-1))m),其中n表示当前monkey测试是第n次monkey测试。例如:n可以取5,m取0.2。数字1,2……n-1表示第n次monkey测试之前的第1次monkey测试,第2次monkey测试……第n-1次monkey测试。在终端设备根据所述预设阈值确定了所有的区域半径之后,终端设备确定以对应位置坐标为中心,每个区域半径为半径的区域为预设区域;最后将所述待测试界面中除所有预设区域之外的区域确定为所述第二可操作区域。

其中,该第二可操作区域的形状不限于圆形,它还可以是矩形或者其他多边形等。

需要说明的是,可选地,第1次monkey测试可以采用实施例一或实施例二的方法,第n次monkey测试可以采用步骤s24至步骤s26的方法,但本发明实施例对此不做限制。

针对步骤s26进行说明:

可选地,第二伪随机事件为点击操作、触摸操作或滑动操作。

总之,本发明实施例提供一种monkey测试方法,其中终端设备可以执行多次monkey测试,每次monkey测试的可操作区域均不是之前monkey测试中的可操作区域,基于此,monkey测试不会集中在待测试界面中的某一个或几个区域,即提高了测试覆盖度,进而提高了测试的有效性。

实施例四

图6为本发明一实施例提供的一种monkey测试装置的示意图,其中该装置为终端设备的部分或全部,该终端设备可以是智能手机,平板电脑,pc、游戏控制台或者模拟器等,如图6所示,该装置包括:

显示模块61,用于显示待测试界面。

第一确定模块62,用于确定位于所述待测试界面中的第一可操作区域。

第一生成模块63,用于生成在所述第一可操作区域上的第一伪随机事件,并执行所述第一伪随机事件。

可选地,第一生成模块63具体用于删除所述待测试界面中的无效区域,所述无效区域为所述待测试界面中除所述第一可操作区域之外的区域。生成在经过删除之后的待测试界面上的所述第一伪随机事件。

可选地,第一确定模块62具体用于:确定位于所述待测试界面中的当前可操作控件。根据所述当前可操作控件确定所述第一可操作区域。

可选地,第一确定模块62具体用于:将所述当前可操作控件所占用的区域确定为所述第一可操作区域。或者,将以所述当前可操作控件为中心,且与所述当前可操作控件距离小于预设距离的坐标点构成的区域确定为所述第一可操作区域。

可选地,该装置还包括:

第二确定模块64,用于确定所述第一伪随机事件对应的位置坐标。

第三确定模块65,用于根据所述位置坐标和预设阈值确定位于所述待测试界面中的第二可操作区域。

第二生成模块66,用于生成在所述第二可操作区域上的第二伪随机事件,并执行所述第二伪随机事件。

可选地,第三确定模块65具体用于:根据所述预设阈值确定区域半径。将以所述位置坐标为中心,所述区域半径为半径的区域确定为预设区域。将所述待测试界面中除所述预设区域之外的区域确定为所述第二可操作区域。

可选地,第一伪随机事件为点击操作、触摸操作或滑动操作。所述第二伪随机事件为点击操作、触摸操作或滑动操作。

本发明实施例提供的monkey测试装置可以用于执行上述monkey测试方法,其内容和效果可参考方法部分,本发明实施例对此不再赘述。

实施例五

图7为本发明一实施例提供的一种终端设备的示意图,该终端设备可以是智能手机,平板电脑,pc、游戏控制台或者模拟器等,如图7所示,该终端设备包括:显示器71、处理器72和存储器73。

所述显示器71,用于显示待测试界面;

所述存储器72,用于存储所述处理器73的可执行指令,以使所述处理器用于确定位于所述待测试界面中的第一可操作区域;生成在所述第一可操作区域上的第一伪随机事件,并执行所述第一伪随机事件。

可选地,处理器72具体用于:删除所述待测试界面中的无效区域,所述无效区域为所述待测试界面中除所述第一可操作区域之外的区域;生成在经过删除之后的待测试界面上的所述第一伪随机事件。

可选地,处理器72具体用于:确定位于所述待测试界面中的当前可操作控件;根据所述当前可操作控件确定所述第一可操作区域。

可选地,处理器72具体用于:将所述当前可操作控件所占用的区域确定为所述第一可操作区域;或者,将以所述当前可操作控件为中心,且与所述当前可操作控件距离小于预设距离的坐标点构成的区域确定为所述第一可操作区域。

可选地,处理器72还用于:确定所述第一伪随机事件对应的位置坐标;根据所述位置坐标和预设阈值确定位于所述待测试界面中的第二可操作区域;生成在所述第二可操作区域上的第二伪随机事件,并执行所述第二伪随机事件。

可选地,处理器72具体用于:根据所述预设阈值确定区域半径;将以所述位置坐标为中心,所述区域半径为半径的区域确定为预设区域;将所述待测试界面中除所述预设区域之外的区域确定为所述第二可操作区域。

可选地,第一伪随机事件为点击操作、触摸操作或滑动操作;所述第二伪随机事件为点击操作、触摸操作或滑动操作。

可选地,所述终端设备还包括收发器64,其中该收发器64用于实现与其他设备之间的通信。

其中,处理器72可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,asic)、数字信号处理器(digitalsignalprocessor,dsp)、数字信号处理设备(digitalsignalprocessingdevice,dspd)、可编程逻辑器件(programmablelogicdevice,pld)、现场可编程门阵列(field-programmablegatearray,fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法的全部或部分步骤。

存储器73可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(staticrandomaccessmemory,sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,eprom),可编程只读存储器(programmableread-onlymemory,prom),只读存储器(read-onlymemory,rom),磁存储器,快闪存储器,磁盘或光盘。

收发器64可以接入基于通信标准的无线网络,如无线保真(wireless-fidelity,wifi),第二代(2generation,2g)移动通信系统或第三代(3generation,3g)移动通信系统,或它们的组合。在一个示例性实施例中,收发器64经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述收发器64还包括近场通信(nearfieldcommunication,nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(radiofrequencyidentification,rfid)技术,红外数据协会(infrareddataassociation,irda)技术,超宽带(ultrawideband,uwb)技术,蓝牙(bluetooth,bt)技术和其他技术来实现。

本发明实施例提供的终端设备可以用于执行上述monkey测试方法,其内容和效果可参考方法部分,本发明实施例对此不再赘述。

实施例六

本发明实施例提供一种计算机存储介质,包括:计算机指令,所述计算机指令用于实现如所述的monkey测试方法。其内容和效果可参考方法部分,本发明实施例对此不再赘述。

实施例七

本发明实施例提供一种计算机程序产品,包括:计算机指令,所述计算机指令用于实现如所述的monkey测试方法。其内容和效果可参考方法部分,本发明实施例对此不再赘述。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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