应用测试方法、装置、设备及存储介质转让专利

申请号 : CN202210496233.X

文献号 : CN114579473B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王顺何泳琳赵飞洲邓安鑫田广明万仁俊

申请人 : 太平金融科技服务(上海)有限公司深圳分公司

摘要 :

本申请涉及一种应用测试方法、装置、设备及存储介质,属于应用测试技术领域。该应用测试方法包括:接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;将测试指令发送至与目标地址信息绑定的目标测试设备中;其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。本申请提供的应用测试方法,可以提高应用的测试效率。

权利要求 :

1.一种应用测试方法,其特征在于,应用于服务器,所述方法包括:

接收针对测试任务池中目标测试任务的调用指令,基于所述目标测试任务生成测试指令,所述目标测试任务包括:目标待测试应用的应用标识信息、存储所述目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;所述测试任务的创建包括:创建测试应用,创建多个测试场景,对多个所述测试场景按照测试需求进行组合生成所述测试任务;所述测试场景包括完整的验证流程,或者某个功能点的验证;所述测试场景包括模拟登录、表单创建、表单审批、表单回收、公文查询和人员清点中的至少一个;

将所述测试指令发送至与所述目标地址信息绑定的目标测试设备中;

其中,所述测试指令用于指示所述目标测试设备根据所述目标待测试应用的应用标识信息定位所述目标待测试应用,并调用所述目标测试场景的场景标识信息对应的目标测试程序,利用所述目标测试程序对所述目标待测试应用进行测试;

所述目标测试设备为虚拟机,所述目标测试程序存储在所述虚拟机中,所述服务器与所述虚拟机之间使用zeromq的通讯与数据传输方式,且所有传输的数据均进行加密处理。

2.根据权利要求1所述的方法,其特征在于,所述接收针对测试任务池中目标测试任务的调用指令之前,所述方法还包括:确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景;

根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建所述测试任务池。

3.根据权利要求2所述的方法,其特征在于,所述确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景,包括:获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;

为各个所述待测试应用均分配同一测试场景。

4.根据权利要求1至3任一所述的方法,其特征在于,所述接收针对测试任务池中目标测试任务的调用指令之前,所述方法还包括:为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;

其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。

5.根据权利要求4所述的方法,其特征在于,在 所述为各个终端分配对应的测试设备之后,所述方法还包括:指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。

6.根据权利要求1至3任一所述的方法,其特征在于,所述接收针对测试任务池中目标测试任务的调用指令之后,所述方法还包括:获取所述目标测试场景对应的测试参数,并将所述测试参数发送至所述目标测试设备,以使所述目标测试设备将所述测试参数添加至所述目标测试程序中。

7.根据权利要求1至3任一所述的方法,其特征在于,所述接收针对测试任务池中目标测试任务的调用指令,包括:在到达预先设定的测试时间后,接收针对所述测试任务池中所述目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对所述测试任务池中所述目标测试任务的调用指令。

8.根据权利要求1至3任一所述的方法,其特征在于,所述待测试应用为应用系统包括的应用,所述接收针对测试任务池中目标测试任务的调用指令,包括:在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,所述指示信息用于指示所述应用系统发生程序变更。

9.根据权利要求1至3任一所述的方法,其特征在于,所述目标测试程序中包括至少一个异常捕获程序,所述异常捕获程序用于在所述目标待测试应用进行测试的过程中对所述目标待测试应用的异常响应状况进行捕获处理。

10.根据权利要求1至3任一所述的方法,其特征在于,所述将所述测试指令发送至与所述目标地址信息绑定的目标测试设备中之后,所述方法还包括:接收所述目标测试设备发送的测试报告,所述测试报告用于指示所述目标待测试应用的测试结果。

11.根据权利要求10所述的方法,其特征在于,所述测试报告包括所述目标地址信息;

所述方法还包括:在接收到所述目标测试设备发送的测试报告之后,调用邮件发送程序,以通过所述邮件发送程序根据所述目标地址信息将所述测试报告发送至存储所述目标待测试应用的终端。

12.根据权利要求10所述的方法,其特征在于,所述测试报告包括所述目标待测试应用在所述目标测试场景中的异常指示信息,所述方法还包括:检测所述目标待测试应用的句柄顺序与所述目标待测试应用在测试过程中的页面切换顺序是否一致;

若所述句柄顺序与所述页面切换顺序不一致,则获取所述目标待测试应用的当前句柄列表,并在所述当前句柄列表中查找所述目标待测试应用在所述目标测试场景下的页面切换产生的每一句柄;

将查找到的每一句柄中不存在于所述句柄列表中的句柄作为切换句柄,并根据所述切换句柄进入所述待测试应用的目标页面。

13.一种应用测试装置,其特征在于,应用于服务器,所述装置包括:

生成模块,用于接收针对测试任务池中目标测试任务的调用指令,基于所述目标测试任务生成测试指令,所述目标测试任务包括:目标待测试应用的应用标识信息、存储所述目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;所述测试任务的创建包括:创建测试应用,创建多个测试场景,对多个所述测试场景按照测试需求进行组合生成所述测试任务;所述测试场景包括完整的验证流程,或者某个功能点的验证;所述测试场景包括模拟登录、表单创建、表单审批、表单回收、公文查询和人员清点中的至少一个;

发送模块,用于将所述测试指令发送至与所述目标地址信息绑定的目标测试设备中;

其中,所述测试指令用于指示所述目标测试设备根据所述目标待测试应用的应用标识信息定位所述目标待测试应用,并调用所述目标测试场景的场景标识信息对应的目标测试程序,利用所述目标测试程序对所述目标待测试应用进行测试;

其中,所述目标测试设备为虚拟机,所述目标测试程序存储在所述虚拟机中,所述服务器与所述虚拟机之间使用zeromq的通讯与数据传输方式,且所有传输的数据均进行加密处理。

14.一种服务器,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至12任一所述的应用测试方法。

15.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至12任一所述的应用测试方法。

说明书 :

应用测试方法、装置、设备及存储介质

技术领域

[0001] 本发明涉及应用测试技术领域,特别是涉及一种应用测试方法、装置、设备及存储介质。

背景技术

[0002] 近年来,随着网络技术的普及和应用开发新技术的发展,应用的使用日益广泛,应用在开发环节或者更新维护环节中,需要进行应用的测试,并对测试出现的异常部分进行修正来提高应用的性能。
[0003] 现有的应用测试方法是通过开发出针对应用的多个功能的测试程序,并将测试程序存储于待测试应用的设备上来对应用的多个功能进行一一测试。在测试过程中针对每台测试设备一一调用相应的测试程序来进行应用测试。
[0004] 然而,现有的应用测试方法存在测试效率较低的问题。

发明内容

[0005] 基于此,有必要针对上述技术问题,提供一种应用测试方法、装置、设备及存储介质,能够提高应用的测试效率。
[0006] 第一方面,本申请实施例提供了一种应用测试方法,该方法包括:接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;将测试指令发送至与目标地址信息绑定的目标测试设备中;其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0007] 在一个实施例中,接收针对测试任务池中目标测试任务的调用指令之前,方法还包括:确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景;根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0008] 在一个实施例中,确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景,包括:获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;为各个待测试应用均分配同一测试场景。
[0009] 在一个实施例中,接收针对测试任务池中目标测试任务的调用指令之前,方法还包括:为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。
[0010] 在一个实施例中,在为各个终端分配对应的测试设备之后,方法还包括:
[0011] 指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0012] 在一个实施例中,接收针对测试任务池中目标测试任务的调用指令之后,方法还包括:
[0013] 获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0014] 在一个实施例中,接收针对测试任务池中目标测试任务的调用指令,包括:
[0015] 在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0016] 在一个实施例中,待测试应用为应用系统包括的应用,接收针对测试任务池中目标测试任务的调用指令,包括:
[0017] 在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0018] 在一个实施例中,目标测试程序中包括至少一个异常捕获程序,异常捕获程序用于在目标待测试应用进行测试的过程中对目标待测试应用的异常响应状况进行捕获处理。
[0019] 在一个实施例中,将测试指令发送至与目标地址信息绑定的目标测试设备中之后,方法还包括:
[0020] 接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0021] 在一个实施例中,测试报告包括目标地址信息;方法还包括:在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0022] 在一个实施例中,测试报告包括目标待测试应用在目标测试场景中的异常指示信息,方法还包括:检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致;若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄;将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0023] 本申请实施例第二方面,提供了一种应用测试装置,该装置包括:
[0024] 生成模块,用于接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;
[0025] 发送模块,用于将测试指令发送至与目标地址信息绑定的目标测试设备中;
[0026] 其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0027] 本申请实施例第三方面,还提供了一种服务器,该服务器包括:包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时实现本申请实施例第一方面任一的应用测试方法。
[0028] 本申请实施例第四方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如本申请实施例第一方面任一的应用测试方法。
[0029] 本申请实施例提供的技术方案带来的有益效果至少包括:
[0030] 本申请实施例通过接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,其中,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息,然后,将测试指令发送至与目标地址信息绑定的目标测试设备中;最后,目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。本申请实施例提供的应用测试方法由于提前创建了针对待测试应用的多个测试场景,且将测试场景对应的测试程序均存储至相应的测试设备上,在对应用的测试过程中,针对多个不同的应用或多个不同设备上的应用,只需要根据测试任务生成测试指令,相应的测试设备根据测试指令来对待测试应用进行测试,可以提高位于多个终端上的应用的测试效率。

附图说明

[0031] 图1为本申请实施例提供的一种应用测试方法的流程图;
[0032] 图2为本申请实施例提供的一种在接收针对测试任务池中目标测试任务的调用指令之前的应用测试方法的流程图;
[0033] 图3为本申请实施例提供的一种应用、场景及任务的关系示意图;
[0034] 图4为本申请实施例提供了一种示例性地确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景的技术过程的流程图;
[0035] 图5为本申请实施例提供的一种待测试应用的测试报告的示意图;
[0036] 图6为本申请实施例提供的一种应用测试装置的结构框图;
[0037] 图7为本申请实施例提供的服务器的内部结构示意图。

具体实施方式

[0038] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0039] 近年来,随着网络技术的普及和应用开发新技术的发展,应用的使用日益广泛,应用在开发环节或者更新维护环节中,需要进行应用的测试,并对测试出现的异常部分进行修正来提高应用的性能。
[0040] 发现日常开发及运维工作中,运维及开发人员在进行系统版本迭代及故障修复后,都需要去对其一些核心功能进行验证,其验证成败的判断依据包含:网页是否正常响应、表单是否正常创建、不同页面之间的跳转是否正常等。
[0041] 现有的应用测试方法是通过开发出针对应用的多个功能的测试程序,并将测试程序存储于待测试应用的设备上来对应用的多个功能进行一一测试。在测试过程中针对每台测试设备一一调用相应的测试程序来进行应用测试。
[0042] 然而,由于应用的测试功能较多,且经常存在需要同时对多个设备上的应用进行同时测试的情况,因此,现有的应用测试方法存在测试效率较低的问题。
[0043] 基于此,有必要针对上述技术问题,提供一种应用测试方法,能够提高应用的测试效率。
[0044] 在该应用测试方法中,通过接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,其中,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息,然后,将测试指令发送至与目标地址信息绑定的目标测试设备中;最后,目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。本申请实施例提供的应用测试方法由于提前创建了针对待测试应用的多个测试场景,且将测试场景对应的测试程序均存储至相应的测试设备上,在对应用的测试过程中,针对多个不同的应用或多个不同设备上的应用,只需要根据测试任务生成测试指令,相应的测试设备根据测试指令来对待测试应用进行测试,可以提高位于多个终端上的应用的测试效率。
[0045] 需要说明的是,本申请实施例提供的应用测试方法,其执行主体可以是应用测试装置,该应用测试装置可以通过软件、硬件或者软硬件结合的方式实现成为服务器的部分或者全部。下述方法实施例中,均以执行主体是服务器为例来进行说明。
[0046] 下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
[0047] 请参考图1,其示出了本申请实施例提供的一种应用测试方法的流程图,该应用测试方法可以应用于上文的服务器中。如图1所示,该应用测试方法可以包括以下步骤:
[0048] 步骤101、接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令。
[0049] 其中,测试任务池中包括多个预先创建好的测试任务,目标测试任务为多个测试任务中的一个。目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息。
[0050] 其中,待测试应用可以是多个终端设备上存储的待测试应用,也可以是服务器上存储的待测试应用,本申请对此不做限定。
[0051] 可选的,待测试应用可以为Web应用。
[0052] 其中,目标测试场景包括至少一个待测试应用的测试功能,例如,待测试应用为OA系统,那么目标测试场景可以为:模拟登录、表单创建、表单审批、表单回收、公文查询或人员清点等。
[0053] 可选的,还可以对该测试任务生成一个ID,该ID可以作为一个API调用入口,在触发调用事件的情况下,通过调用程序通过API调用入口调用相应的测试任务。
[0054] 需要说明的是,待测试应用的应用标识信息可以是操作者输入的、可以是其他设备发送的、也可以是服务器主动获取的。也就是说,服务器可以接收操作者输入的待测试应用的应用标识信息,可以接收其他设备发送的待测试应用的应用标识信息、也可以在预设规则下服务器主动获取待测试应用的应用标识信息。
[0055] 步骤102、将测试指令发送至与目标地址信息绑定的目标测试设备中。
[0056] 其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0057] 其中,目标测试设备中存储有多个测试场景对应的测试程序。
[0058] 步骤103、目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0059] 可选的,目标测试设备可以为虚拟机。将测试程序存储在虚拟机中可以在满足验证需求的同时,也避免了在服务器上放置脚本导致账密泄露等信息安全相关的事故。
[0060] 可选的,服务器与虚拟机之间使用了zeromq的通讯与数据传输方式。服务器将指令发送给虚拟机时使用zeromq的pub/sub套接字实现,所有传输的数据都会进行加密处理,只有虚拟机才能解密接收到的数据。虚拟机将数据回传给服务器时使用zeromq的req/rep套接字实现。
[0061] 本申请实施例提供的应用测试方法,通过接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,其中,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息,然后,将测试指令发送至与目标地址信息绑定的目标测试设备中;最后,目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。本申请实施例提供的应用测试方法由于提前创建了针对待测试应用的多个测试场景,且将测试场景对应的测试程序均存储至相应的测试设备上,在对应用的测试过程中,针对多个不同的应用或多个不同设备上的应用,只需要根据测试任务生成测试指令,相应的测试设备根据测试指令来对待测试应用进行测试,可以提高位于多个终端上应用的测试效率。
[0062] 请参考图2,本申请实施例提供了一种在接收针对测试任务池中目标测试任务的调用指令之前的应用测试方法的流程图,如图2所示,该技术过程可以包括以下步骤:
[0063] 步骤201、确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景。
[0064] 步骤202、根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0065] 该实施例是测试任务的创建过程,测试任务的创建可以包括:创建测试应用、创建测试场景以及对测试场景按照测试需求进行组合生成测试任务。创建测试应用包括:先在前端创建应用,应用会告知服务器需要调用的虚拟机的地址,同时该应用需要指定被验证的系统。创建测试场景包括:创建测试场景,前端会告知服务器验证脚本在虚拟机的执行路径,由服务器加密传输给虚拟机进行执行。场景可以是一个完整的验证流程,也可以只是某个功能点的验证,供创建任务时进行组合,当配置好的场景开始执行时,服务器在作业平台统一生成任务,并将数据加密下发给指定的虚拟机,虚拟机接收并解密后,主要通过运行程序,去运行虚拟机下目标路径的测试程序。
[0066] 在实际测试过程中,先确定要测试的应用,再根据测试需求为这些应用分配测试场景,并将测试场景进行组合生成测试任务。例如待测试应用为OA系统,那么目标测试场景可以为:模拟登录、表单创建、表单审批、表单回收、公文查询或人员清点等,那么测试任务可以为验证表单,该验证表单中包括模拟登录、表单创建、表单审批和表单回收。
[0067] 在创建过程中,服务器前端部分需逐步创建应用、场景及任务;服务器后端处理前端部分传回的数据,根据所填的参数,与相应的虚拟机进行通讯并下发执行作业。
[0068] 任务的创建可以视为将场景进行整合,把应用下的多个场景根据验证需求进行组合,再设定好执行的时间或周期即可。开发出的该套业务执行逻辑,能让系统负责人根据需要进行任务的编排,使验证过程更加灵活可控制,且用于管理多套系统的多功能,多场景验证代码,可以提高应用测试的管理效率。
[0069] 如图3所示,提供了一种应用、场景及任务的关系示意图,其中,一个应用包括一个应用系统,而一个应用可以有多个针对该应用的场景,不同场景的组合形成了任务。
[0070] 请参考图4,本申请实施例提供了一种示例性地确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景的技术过程,如图4所示,该技术过程可以包括以下步骤:
[0071] 401、获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用。
[0072] 402、为各个待测试应用均分配同一测试场景。
[0073] 集群环境下,单台节点异常退出后,并不影响其他节点的验证,便于及时发现单点故障;单台节点验证某个功能异常时,并不影响其他功能的继续验证,使得负责人能对问题快速定位,有效缩短故障发生后的修复时间。所涉及到的算法规则如下:将所有待验证的地址写入一个列表中,循环遍历每一地址,逐个进行验证,循环中嵌入异常捕获程序,如遇异常,则以跳出当前地址的循环。
[0074] 本实施例中,通过获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;为各个待测试应用均分配同一测试场景。例如,该测试场景可以是模拟登录场景,为避免单点故障,对初始化时赋值的所有地址取出进行功能验证,先传入预先写好的登录函数进行登录。随后核验页面的title是否与正常的title匹配,据此可检验站点是否正常,如遇502、404等响应,则将其title打印,并将报告通过邮件发送给系统负责人处理,保障系统稳定运行。
[0075] 在一个实施例中,接收针对测试任务池中目标测试任务的调用指令之前,方法还包括:为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。
[0076] 本实施例是指在进行应用测试之间,先为待测试应用的终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定,其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。为终端分配对应的测试设备,并将测试程序存储在测试设备中,可以在提高测试效率的同时提高测试的安全性。
[0077] 在一个实施例中,指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0078] 本实施例是指在进行应用测试之前,指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,然后测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0079] 作为其中一个实施例,接收针对测试任务池中目标测试任务的调用指令之后,方法还包括:获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0080] 本实施例是指在进行应用测试之前,可以将针对不同的测试应用的测试参数,发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0081] 需要说明的是,目标测试场景对应的测试参数可以是操作者输入的,也可以是其他终端发送的,也就是说,服务器可以接收操作者输入的目标测试场景对应的测试参数,也可以接收其他设备发送的目标测试场景对应的测试参数。通过将测试参数发送至目标测试设备,目标测试设备可以将测试参数添加对目标测试程序中,对于不同的待测试应用的相同测试场景可以直接将相应的测试参数添加到目标测试程序中来进行测试。
[0082] 作为其中一个实施例,接收针对测试任务池中目标测试任务的调用指令,包括:在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0083] 其中,对测试任务可以提前设置测试时间,或者测试周期。在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0084] 作为其中一个实施例,待测试应用为应用系统包括的应用,接收针对测试任务池中目标测试任务的调用指令,包括:在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0085] 其中,程序变更是指应用系统的程序发生版本发布或者故障修复等情况。在接收到第三方设备发送的指示信息之后,触发调用程序并生成测试任务的调用指令。
[0086] 作为其中一个实施例,目标测试程序中包括至少一个异常捕获程序,异常捕获程序用于在目标待测试应用进行测试的过程中对目标待测试应用的异常响应状况进行捕获处理。
[0087] 对业务系统场景定制化开发时,测试程序中,每一到三个步骤会根据出错的概率配置异常捕获,这么做的好处是:当验证过程中出现异常时,打印出的内容能帮助系统负责人快速定位到问题发生的环节;当应用页面有功能变化,或增加新功能时,能帮助开发者更快定位到相应步骤所在的代码块,有效缩短故障发生后的修复时间。每个功能点的核验过程中或多或少会遇到故障导致程序中止,本方案设计之初就将每个功能点的核验封装成便于调用的方式,且对相应步骤配置详细的异常捕获信息,便于快速定位;且在遇到报错时智能捕获关键节点,不影响后续地址的功能验证及程序的运行。
[0088] 作为其中一个实施例,将测试指令发送至与目标地址信息绑定的目标测试设备中之后,方法还包括:接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0089] 如图5所示,提供了一种测试报告的示意图,该测试报告包括目标地址信息;方法还包括:在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0090] 其中,测试任务结束后,测试设备会生成测试报告并会将测试报告发送给服务器,服务器在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端,或者,服务器根据预存储的工作人员的邮箱信息,将测试报告发送至相应的工作人员的邮箱中,不需要随时对测试过程进行监控,只需要通过邮件接收测试报告就可以得到测试结果。同时,在应用的版本发布、故障修复后,能够自动对多个系统应用核心功能进行验证,全程无需人工手动验证,只需等待运行报告的邮件即可,在节约人力、提升效率方面取得显著成效。
[0091] 为了确保信息安全及能进行正常的邮件通知,在服务器上配置了相应邮箱地址及邮件发送脚本,可由相应的请求触发邮件发送脚本。为加强系统的信息安全,发送邮件时需填写相应的应用ID及身份标识。
[0092] 作为其中一个实施例,测试报告包括目标待测试应用在目标测试场景中的异常指示信息,方法还包括:检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致;若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄;将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0093] 本实施例是指在对应用的测试过程中,可能会出现页面切换失灵的情况,在这种情况下,可以通过对列表中句柄个数进行判断,将存储句柄的列表复制,此时再点击第一个页面中的按钮,弹出第二个页面。将句柄列表中的句柄取出,若取出的句柄不在刚刚复制的列表里,说明取出的句柄是新页面的句柄,此时再通过该句柄切入,即可完成对新页面的访问,解决了代码有时候切换页面会失灵的情况。
[0094] 本申请实施例还提供了一种应用测试方法,该方法包括以下步骤:
[0095] (1)为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定。
[0096] (2)指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0097] (3)确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景。
[0098] (4)获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用。
[0099] (5)为各个待测试应用均分配同一测试场景。
[0100] (6)根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0101] (7)接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令。
[0102] (8)获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0103] (9)在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0104] (10)在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0105] (11)将测试指令发送至与目标地址信息绑定的目标测试设备中。
[0106] (12)目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0107] (13)接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0108] (14)在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0109] (15)检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致。
[0110] (16)若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄。
[0111] (17)将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0112] 本申请实施例提供的应用测试方法,通过接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,其中,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息,然后,将测试指令发送至与目标地址信息绑定的目标测试设备中;最后,目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。本申请实施例提供的应用测试方法由于提前创建了针对待测试应用的多个测试场景,且将测试场景对应的测试程序均存储至相应的测试设备上,在对应用的测试过程中,针对多个不同的应用或多个不同设备上的应用,只需要根据测试任务生成测试指令,相应的测试设备根据测试指令来对待测试应用进行测试,可以提高位于多个终端上应用的测试效率。
[0113] 本申请根据不同业务系统的验证需求,开发出一个通用框架,使得代码能快速适配不同的系统,提升了后续开发效率。因为每套业务系统保障的侧重点不同,需要核验的功能大相径庭,当面对多个系统,需要开发不同应用的自动化验证代码时,该框架提供了一个通用的开发流程,涉及改动的地方主要为核心功能验证的部分,其他部分如操控浏览器登录、传入参数、异常捕获等基本无需太多改动,极大提升开发效率,有效缩短了开发的时长,实现以更少的人力去管理、保障多个系统的稳定性。本申请所用的可复制框架建立在面向对象编程的基础上,以被验证的业务系统为核心对象,通过面向对象编程思想去对对象的特征和变化规律进行一种抽象,以此来实现具体的功能。此举能大幅减少冗余的代码,并可以方便地扩展现有代码,提高编码效率,也减低了出错概率,降低维护的难度。
[0114] 进一步的,本申请实施例提供的应用测试方法,在应用系统故障处理及版本发布后,无需人工手动核验应用,自动完成验证任务,且不遗漏关键功能;有效避免单点故障,会验证同一个业务系统下的所有地址;丰富了使用场景,方案适用于上线前测试、业务保障、故障处理、版本发布等场景;触发方式多样,可满足不同场景的需求,包含手动触发、定时触发、周期触发、API触发;前端界面易于管理,多个系统任务运行互不影响,层次清晰;开发出通用的开发框架,无需从头写代码,只需改核心功能验证部分代码即可投入使用,能够快速适配不同的业务系统,提升开发效率,降低维护成本;能及时发现业务系统是否存在单点故障,且在遇到报错时智能捕获关键节点,不影响后续地址的功能验证及程序的运行;实现与自动化发版、故障处理、监控系统、作业平台的协同工作,辅助运维自动化体系更加全面。
[0115] 如图6所示,本申请实施例还提供一种应用测试装置,该应用测试装置60包括:生成模块61、发送模块62;生成模块61,用于接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;发送模块62,用于将测试指令发送至与目标地址信息绑定的目标测试设备中;其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0116] 在一个实施例中,该装置还包括创建模块63,用于确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景;根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0117] 在一个实施例中,创建模块63,还用于获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;为各个待测试应用均分配同一测试场景。
[0118] 在一个实施例中,该装置还包括分配模块64,用于为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;
[0119] 其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。
[0120] 在一个实施例中,分配模块64,还用于指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0121] 在一个实施例中,该装置还包括获取模块65,获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0122] 在一个实施例中,该装置还包括接收模块66,用于在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0123] 在一个实施例中,接收模块66,还用于在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0124] 在一个实施例中,目标测试程序中包括至少一个异常捕获程序,异常捕获程序用于在目标待测试应用进行测试的过程中对目标待测试应用的异常响应状况进行捕获处理。
[0125] 在一个实施例中,接收模块66,还用于接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0126] 在一个实施例中,该装置还包括调用模块67,用于在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0127] 在一个实施例中,该装置还包括检测模块68,用于检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致;若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄;将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0128] 本申请实施例提供的应用测试装置,可以实现上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0129] 关于应用测试装置的具体限定可以参见上文中对于应用测试方法的限定,在此不再赘述。上述应用测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于服务器中的处理器中,也可以以软件形式存储于服务器中的存储器中,以便于服务器调用执行以上各个模块对应的操作。
[0130] 图7为本申请实施例提供的一种服务器的内部结构示意图。如图7所示,该服务器包括通过系统总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个终端的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种应用测试方法。内存储器为非易失性存储介质中的操作系统和计算机程序提供高速缓存的运行环境。
[0131] 本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0132] 在本申请的一个实施例中,提供了一种服务器,该服务器包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0133] 接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;将测试指令发送至与目标地址信息绑定的目标测试设备中;其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0134] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景;根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0135] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;为各个待测试应用均分配同一测试场景。
[0136] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。
[0137] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0138] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0139] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0140] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0141] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:目标测试程序中包括至少一个异常捕获程序,异常捕获程序用于在目标待测试应用进行测试的过程中对目标待测试应用的异常响应状况进行捕获处理。
[0142] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0143] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0144] 在一个实施例中,该处理器执行计算机程序时实现以下步骤:检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致;若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄;将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0145] 本实施例提供的服务器,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0146] 在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0147] 接收针对测试任务池中目标测试任务的调用指令,基于目标测试任务生成测试指令,目标测试任务包括:目标待测试应用的应用标识信息、存储目标待测试应用的终端的目标地址信息和目标测试场景的场景标识信息;将测试指令发送至与目标地址信息绑定的目标测试设备中;其中,测试指令用于指示目标测试设备根据目标待测试应用的应用标识信息定位目标待测试应用,并调用目标测试场景的场景标识信息对应的目标测试程序,利用目标测试程序对目标待测试应用进行测试。
[0148] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:确定多个待测试应用,从多个预先创建的测试场景中,为各个待测试应用分配测试场景;根据为各个待测试应用分配的测试场景的场景标识信息、各个待测试应用的应用标识信息以及存储各个待测试应用的终端的地址信息,创建各个待测试应用对应的测试任务,基于创建的测试任务构建测试任务池。
[0149] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:获取各终端的地址信息,根据各终端的地址信息,确定终端上存储的任一待测试应用;为各个待测试应用均分配同一测试场景。
[0150] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:为各个终端分配对应的测试设备,并将终端的地址信息与为终端分配的测试设备进行绑定;其中,为终端分配的测试设备用于存储终端中待测试应用的测试程序。
[0151] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:指定不同测试场景对应的测试程序在测试设备上的存储位置,并将指定的存储位置发送至测试设备,以使测试设备根据指定的存储位置对不同测试场景对应的测试程序进行存储。
[0152] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:获取目标测试场景对应的测试参数,并将测试参数发送至目标测试设备,以使目标测试设备将测试参数添加至目标测试程序中。
[0153] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:在到达预先设定的测试时间后,接收针对测试任务池中目标测试任务的调用指令;或者,按照预先设定的测试周期,周期性地接收针对测试任务池中目标测试任务的调用指令。
[0154] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:在接收到第三方设备发送的指示信息之后,接收针对测试任务池中目标测试任务的调用指令,指示信息用于指示应用系统发生程序变更。
[0155] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:目标测试程序中包括至少一个异常捕获程序,异常捕获程序用于在目标待测试应用进行测试的过程中对目标待测试应用的异常响应状况进行捕获处理。
[0156] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:接收目标测试设备发送的测试报告,测试报告用于指示目标待测试应用的测试结果。
[0157] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:在接收到目标测试设备发送的测试报告之后,调用邮件发送程序,以通过邮件发送程序根据目标地址信息将测试报告发送至存储目标待测试应用的终端。
[0158] 在一个实施例中,计算机程序被处理器执行时实现以下步骤:检测目标待测试应用的句柄顺序与目标待测试应用在测试过程中的页面切换顺序是否一致;若句柄顺序与页面切换顺序不一致,则获取目标待测试应用的当前句柄列表,并在当前句柄列表中查找目标待测试应用在目标测试场景下的页面切换产生的每一句柄;将查找到的每一句柄中不存在于句柄列表中的句柄作为切换句柄,并根据切换句柄进入待测试应用的目标页面。
[0159] 本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0160] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以M种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(SyMchliMk)DRAM(SLDRAM)、存储器总线(RaMbus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0161] 以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0162] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。