一种软件测试的方法、装置及电子设备与流程

文档序号:11807762阅读:292来源:国知局
一种软件测试的方法、装置及电子设备与流程

本申请涉及测试技术领域,尤其涉及测试的方法、装置及电子设备。



背景技术:

随着移动终端的迅猛发展,针对移动终端的应用程序如雨后春笋般层出不穷,增加了移动终端测试的复杂性,如何快速并保质保量的完成应用程序安装包的测试成为测试工作中一个重要环节。

目前常用的方法为:获取用户上传的安装包后,将安装包依次发送至各移动终端进行测试。例如,如果有50台移动终端,先将安装包发送至第1台移动终端,进行兼容性测试,在第1台移动终端兼容性测试完成后,再将该安装包发送至第2台移动终端进行兼容性测试,依此顺序执行,直至第50台移动终端兼容性测试完成。

由于目前的方法的测试过程是串行进行的,因此测试时间很长。



技术实现要素:

为解决测试时间很长的问题,本申请实施例提出了一种软件测试的方法、装置及电子设备。

第一方面,本申请实施例提供了一种软件测试的方法,所述方法包括:

定时检测测试平台上的测试对象;

获取待测试的测试对象;

确定并发测试数量及候选测试终端;

根据所述并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送所述待测试的测试对象,以使所述选择的测试终端对所述待测试的测试对象进行测试。

可选地,所述向选择的测试终端发送所述待测试的测试对象之后,还包括:

当存在未被选择的候选测试终端时,重复执行根据所述并发测试数量,从未被选择的候选测试终端中选择测试终端,同时向选择的测试终端发送所述待测试的测试对象的步骤,直至不存在未被选择的候选测试终端。

可选地,所述根据所述并发测试数量,从候选测试终端中选择测试终端,包括:

若候选测试终端数量不多于所述并发测试数量,则选择所有的候选测试终端;

若候选测试终端数量多于所述并发测试数量,则选择所述并发测试数量个候选测试终端。

可选地,所述向选择的测试终端发送所述待测试的测试对象之前,还包括:

为发送的所述待测试的测试对象设置标签,其中,向不同测试终端发送的测试对象的标签互不同。

可选地,所述选择的测试终端为多个;

所述同时向选择的测试终端发送所述待测试的测试对象,包括:

为多个选择的测试终端分别创建对应的线程;

同时在多个线程中向对应的选择的测试终端发送所述待测试的测试对象。

可选地,所述同时向选择的测试终端发送所述待测试的测试对象之后,还包括:

接收选择的测试终端返回的测试结果。

第二方面,本申请实施例提供了一种软件测试的装置,所述装置包括:

检测模块,用于定时检测测试平台上的测试对象;

获取模块,用于获取待测试的测试对象;

确定模块,用于确定并发测试数量及候选测试终端;

发送模块,用于根据所述并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送所述待测试的测试对象,以使所述选择的测试终端对所述待测试的测试对象进行测试。

可选地,所述装置,还包括:

循环模块,用于当存在未被选择的候选测试终端时,重复执行根据所述并发测试数量,从未被选择的候选测试终端中选择测试终端,同时向选择的测试终端发送所述待测试的测试对象的步骤,直至不存在未被选择的候选测试终端。

可选地,所述发送模块,用于当候选测试终端数量不多于所述并发测试数量时,选择所有的候选测试终端;当候选测试终端数量多于所述并发测试数量时,选择所述并发测试数量个候选测试终端。

可选地,所述装置,还包括:

设置模块,用于为发送的所述待测试的测试对象设置标签,其中,向不同测试终端发送的所述待测试的测试对象的标签互不同。

可选地,所述选择的测试终端为多个;

所述发送模块,用于为多个选择的测试终端分别创建对应的线程;同时在多个线程中向对应的选择的测试终端发送所述待测试的测试对象。

可选地,所述装置,还包括:

接收模块,用于接收选择的测试终端返回的测试结果。

第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储器、通信接口和总线;

所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;

所述存储器存储可执行程序代码;

所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种软件测试的方法;

其中,所述测试的方法包括:

定时检测测试平台上的测试对象;

获取待测试的测试对象;

确定并发测试数量及候选测试终端;

根据所述并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送所述待测试的测试对象,以使所述选择的测试终端测试所述待测试的测试对象。

本发明实施例提出定时检测测试平台上的测试对象,在获取待测试的测试对象后,根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,使得多台测试终端对待测试的测试对象进行并行测试,缩短了测试时间,提升了测试效率。

附图说明

下面将参照附图描述本申请的具体实施例,其中:

图1示出了本申请实施例一提供的一种软件测试的方法流程示意图;

图2示出了本申请实施例一提供的另一种软件测试的方法流程示意图;

图3示出了本申请实施例二提供的一种软件测试的装置结构示意图;

图4示出了本申请实施例三提供的一种电子设备的结构示意图。

具体实施方式

为了使本申请的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。

目前对测试对象进行测试时,获取用户上传的安装包后,将安装包依次发送至各测试终端进行测试,该串行的测试过程往往会耗用很长的测试时间。本申请提出了一种软件测试的方法,该测试的方法定时检测测试平台上的测试对象,在获取待测试的测试对象后,根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,使得多台测试终端对待测试的测试对象进行并行测试,缩短了测试时间,提升了测试效率。

实施例一

结合上述实施环境,本实施例提供一种软件测试的方法。为了便于说明,本实施例以如下场景为例,对本实施例提供的方法进行详细说明。

该场景具体为:测试对象为安装包,具体的以apk(Android Package,Android安装包)为例,待测试的测试对象为apk1,执行本实施例提供的软件测试方法的软件测试装置运行于测试平台中,该测试平台需要在25台测试终端中对apk1进行测试。其中,测试终端具体以测试手机为例。

参见图1,本实施例提供的方法流程具体如下:

101:定时检测测试平台上的apk;

在具体实施时,可以每隔预设时间,检测测试平台中是否存在待测试的apk;

测试平台是一个开放性的平台,当有用户需要测试apk时,会通过特定渠道将待测试的apk上传至测试平台。因此,测试平台会每隔预设时间检测该平台中是否有新上传的待测试的apk,以及时对待测试的apk进行测试。

其中,预设时间段可以为1分钟,1秒钟,1刻钟等,本实施例不对预设时间段的时间长度进行限定。

当检测到存在待测试的apk后,执行后续步骤,否则重复执行本步骤。

102:获取待测试的apk;

针对本实施例提供的具体场景,apk1是测试平台上待测试的测试对象,因此本步骤获取apk1。

103:确定并发测试数量及候选测试手机;

其中,并发测试数量的确定方式可以有多种,例如:测试平台中设置了并发测试数量,则获取测试平台中设置的并发测试数量。再例如:用户上传apk1的同时上传了该apk1的并发测试数量,则获取用户上传的并发测试数量。还例如:获取测试平台当前的资源利用情况,根据资源利用情况以及apk1的资源需求确定并发测试数量。

另外,不同测试对象对应的并发测试数量可以相同,也可以不同。

104:根据并发测试数量,从候选测试手机中选择测试手机;

具体的,若候选测试手机数量不多于并发测试数量,则选择所有的候选测试手机;若候选测试手机数量多于并发测试数量,则选择并发测试数量个候选测试手机。

以并发测试数量为10为例,候选测试手机为25台测试手机,候选测试手机数量多于并发测试数量,则选择10台测试手机,编号为测试手机1至测试手机10。

105:同时向选择的测试手机发送apk1;

本步骤的实现方式包括但不限于:为多个选择的测试手机分别创建对应的线程;同时在多个线程中向对应的选择的测试手机发送测试对象。

例如,分别为测试手机1至测试手机10创建对应的线程1至线程10,同时通过线程1至线程10向测试手机1至测试手机10发送apk1。

由于同一个apk1会发送至不同的测试手机中,为了监控每个测试手机对apk1的测试情况,还可以为apk1设置唯一的标签,即为每个apk1设置标签,且向不同测试手机发送的apk1的标签互不同。

例如,向测试手机1发送的apk1的标签为标签1,向测试手机2发送的apk1的标签为标签2等。

106:选择的测试手机对apk1进行测试,并返回测试结果;

通过步骤105,测试平台中的测试装置会同时向10台测试手机(测试手机1至测试手机10)发送相同的apk1。同过步骤106,测试手机1至测试手机10会在收到apk1后同时进行测试。实现了多台测试手机对测试对象进行并行测试,缩短了测试时间,提升了测试效率。

107:接收选择的测试手机返回的测试结果;

为了更好的向用户显示测试结果,执行步骤105后,测试平台会等待接收选择的测试手机返回的测试结果,并汇总、显示、验证该结果。

108:确定是否存在未被选择的候选测试手机,若不存在未被选择的候选测试手机,则结束流程,若存在未被选择的候选测试手机,则重复执行根据并发测试数量,从未被选择的候选测试手机中选择测试手机,同时向选择的测试手机发送测试对象的步骤,直至不存在未被选择的候选测试手机。

在执行步骤107之后,测试平台中,还存在15台未被选择的测试手机,此步骤中,会

(1)从15台未被选择的测试手机中再次选择10台测试手机,例如,编号为测试手机11至测试手机20,分别为测试手机11至测试手机20创建对应的线程11至线程20,同时通过线程11至线程20向测试手机11至测试手机20发送apk1,接收测试手机11至测试手机20返回的测试结果。

(2)从剩下的5台未被选择的测试手机中选择5台测试手机,例如,编号为测试手机21至测试手机25,分别为测试手机21至测试手机25创建对应的线程21至线程25,同时通过线程21至线程25向测试手机21至测试手机25发送apk1,接收测试手机21至测试手机25返回的测试结果。

至此,不存在未被选择的候选测试手机,则结束流程。

为了再次描述本实施例提供的测试方法,参见图2,以云平台通过本实施例提供的方法进行测试为例,进行说明。

本实施例提供的算法开始执行后,云平台会定时(例如每分钟)检测测试平台上的apk,当检测到用户上传的待测试的apk后,设置并发测试数量,选择测试手机(例如测试手机1、测试手机2、测试手机n),并将待测试的apk并发分发到每个选择的测试手机。在并发分发待测试的apk前,为了监控每个测试手机对待测试的apk的测试情况,还可以为待测试的apk设置唯一的标签。测试手机收到待测试的apk后,对待测试的apk进行测试,并返回测试结果。云平台接收并存储选择测试手机返回的测试结果后汇总测试结果。

本发明实施例,定时检测测试平台上的测试对象,在获取待测试的测试对象后,根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,使得多台测试终端对待测试的测试对象进行并行测试,缩短了测试时间,提升了测试效率。

实施例二

基于同一发明构思,本实施例提供了一种软件测试的装置,由于该装置解决问题的原理与实施例一所示的一种软件测试的方法相似,因此该装置的实施可以参见实施例一所示的方法的实施例,重复之处不再赘述。

参见图3,该装置包括:

检测模块301,用于定时检测测试平台上的测试对象;

获取模块302,用于获取待测试的测试对象;

确定模块303,用于确定并发测试数量及候选测试终端;

发送模块304,用于根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,以使选择的测试终端对待测试的测试对象进行测试。

可选地,该装置,还包括:

循环模块305,用于当存在未被选择的候选测试终端时,重复执行根据并发测试数量,从未被选择的候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象的步骤,直至不存在未被选择的候选测试终端。

可选地,发送模块304,用于当候选测试终端数量不多于并发测试数量时,选择所有的候选测试终端;当候选测试终端数量多于并发测试数量时,选择并发测试数量个候选测试终端。

可选地,该装置,还包括:

设置模块306,用于为发送的所述待测试的测试对象设置标签,其中,向不同测试终端发送的待测试的测试对象的标签互不同。

可选地,选择的测试终端为多个;

发送模块307,用于为多个选择的测试终端分别创建对应的线程;同时在多个线程中,向对应的选择的测试终端发送待测试的测试对象。

可选地,该装置,还包括:

接收模块308,用于接收选择的测试终端返回的测试结果。

本发明实施例,定时检测测试平台上的测试对象,在获取待测试的测试对象后,根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,使得多台测试终端对待测试的测试对象进行并行测试,缩短了测试时间,提升了测试效率。

实施例三

本实施例提供了一种电子设备,参见图4,该电子设备400可以包括:处理器401、存储器402、通信接口403和总线404;

处理器401、存储器402和通信接口403通过总线404连接并完成相互间的通信;

存储器402存储可执行程序代码;

处理器401通过读取存储器402中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行一种软件测试的方法;其中,测试的方法包括:

定时检测测试平台上的测试对象;

获取待测试的测试对象;

确定并发测试数量及候选测试终端;

根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,以使选择的测试终端对待测试的测试对象进行测试。

可选地,向选择的测试终端发送所述待测试的测试对象之后,还包括:

当存在未被选择的候选测试终端时,重复执行根据并发测试数量,从未被选择的候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象的步骤,直至不存在未被选择的候选测试终端。

可选地,根据并发测试数量,从候选测试终端中选择测试终端,包括:

若候选测试终端数量不多于并发测试数量,则选择所有的候选测试终端;

若候选测试终端数量多于并发测试数量,则选择并发测试数量个候选测试终端。

可选地,向选择的测试终端发送所述待测试的测试对象之前,还包括:

为发送的所述待测试的测试对象设置标签,其中,向不同测试终端发送的待测试的测试对象的标签互不同。

可选地,选择的测试终端为多个;

同时向选择的测试终端发送待测试的测试对象,包括:

为多个选择的测试终端分别创建对应的线程;

同时在多个线程中向对应的选择的测试终端发送待测试的测试对象。

可选地,同时向选择的测试终端发送待测试的测试对象之后,还包括:

接收选择的测试终端返回的测试结果。

本发明实施例,定时检测测试平台上的测试对象,在获取待测试的测试对象后,本发明实施例,根据并发测试数量,从候选测试终端中选择测试终端,同时向选择的测试终端发送待测试的测试对象,使得多台测试终端对待测试的测试对象进行并行测试,缩短了测试时间,提升了测试效率。

为了描述的方便,以上装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

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