安卓应用的测试方法及装置与流程

文档序号:26139451发布日期:2021-08-03 14:23阅读:87来源:国知局
安卓应用的测试方法及装置与流程

本发明涉及软件测试技术领域,具体涉及安卓应用的测试方法及装置。



背景技术:

目前,由于安卓(android)系统的特殊性,在测试终端进行android应用的开发时,在不同厂商的不同型号设备上,可能会存在独有的兼容性问题,因此需要进行广泛而频繁的测试。

为了解决android测试设备种类繁多和测试步骤复杂的问题,现有技术中,应用最广泛的是云平台测试模式,即通过云端真机进行调试和测试,远程操控将测试终端接入云平台的设备。另外一种测试方案是通过在待测系统内集成专业化测试插件,通过插件进行模拟点击等操作。然而,由于测试终端,云平台测试模式对接入设备有一定的要求,接入设备的接入步骤较为繁琐,并且对设备的批量测试支持力度不足。安卓系统内集成插件的测试方式,在测试需要通常需要系统的root权限,对支持的设备类型也有要求。因此,如何提出一种针对安卓应用的测试方法,以提高测试的便捷性成为本领域需要解决的重要课题。



技术实现要素:

针对现有技术中的问题,本发明实施例提供安卓应用的测试方法及装置,能够至少部分地解决现有技术中存在的问题。

第一方面,本发明提出一种安卓应用的测试方法,包括:

启动测试应用并启动测试组件;

通过所述测试组件向服务器发送设备启动信息;

通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

第二方面,本发明还提供一种安卓应用的测试方法包括:

接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;

向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

第三方面,本发明提出一种安卓应用的测试装置,包括:

启动模块,用于启动测试应用并启动测试组件;

第一发送模块,用于通过所述测试组件向服务器发送设备启动信息;

第一测试模块,用于通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

返回模块,用于通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

第四方面,本发明还提出一种安卓应用的测试装置,包括:

第二接收模块,用于接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;

第二发送模块,用于向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

第三接收模块,用于接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括至少一条测试指令的执行结果。

第五方面,本发明提供一种电子设备,包括第一存储器、第一处理器及存储在所述第一存储器上并可在第一处理器上运行的第一计算机程序,所述第一处理器执行所述第一计算机程序时实现如下安卓应用的测试方法:

启动测试应用并启动测试组件;

通过所述测试组件向服务器发送设备启动信息;

通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

第六方面,本发明提供一种计算机可读存储介质,其上存储有第一计算机程序,所述第一计算机程序被第一处理器执行时实现如下安卓应用的测试方法:

启动测试应用并启动测试组件;

通过所述测试组件向服务器发送设备启动信息;

通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

第七方面,本发明还提供一种电子设备,包括第二存储器、第二处理器及存储在所述第二存储器上并可在第二处理器上运行的第二计算机程序,所述第二处理器执行所述第二计算机程序时实现如下安卓应用的测试方法:

接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;

向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

第八方面,本发明还提供一种计算机可读存储介质,其上存储有第二计算机程序,所述第二计算机程序被第二处理器执行时实现如下安卓应用的测试方法:

接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;

向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

本发明实施例提供的安卓应用的测试方法及装置,能够启动测试应用并启动测试组件,通过测试组件向服务器发送设备启动信息,通过测试组件接收并解析服务器发送的测试信息,获得测试信息包括的测试指令供测试应用执行,获得每条测试指令的执行结果,通过测试组件向服务器返回第一响应信息,无需root权限以及复杂的接入步骤,即可实现对安卓应用的测试,提高了安卓应用测试的便捷性。

附图说明

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

图1是本发明第一实施例提供的安卓应用的测试系统的结构示意图。

图2是本发明第二实施例提供的安卓应用的测试方法的流程示意图。

图3是本发明第三实施例提供的安卓应用的测试方法的流程示意图。

图4是本发明第四实施例提供的安卓应用的测试方法的流程示意图。

图5是本发明第五实施例提供的安卓应用的测试方法的流程示意图。

图6是本发明第六实施例提供的安卓应用的测试方法的流程示意图。

图7是本发明第七实施例提供的安卓应用的测试装置的结构示意图。

图8是本发明第八实施例提供的安卓应用的测试装置的结构示意图。

图9是本发明第九实施例提供的安卓应用的测试装置的结构示意图。

图10是本发明第十实施例提供的安卓应用的测试装置的结构示意图。

图11是本发明第十一实施例提供的安卓应用的测试装置的结构示意图。

图12是本发明第十二实施例提供的电子设备的实体结构示意图。

图13是本发明第十三实施例提供的电子设备的实体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

图1是本发明第一实施例提供的安卓应用的测试系统的结构示意图,如图1所示,本发明实施例提供的安卓应用的测试系统包括服务器1和至少一个测试终端2,其中:

服务器1与每个测试终端2通信连接。其中,测试终端2包括但不限于智能手机、平板电脑等安装安卓应用的终端。

在服务器1上测试人员可以配置测试信息的格式,设置测试应用需要的测试指令,安卓应用测试的每个测试步骤对应一条测试指令,还可以配置安装测试应用的测试终端2。其中,安卓应用测试的每个测试步骤是根据测试流程预先拆分获得的。

在测试终端2上安装测试应用和测试组件。测试组件可以包括功能测试组件和性能测试组件。功能测试组件用于接收并解析服务器1发送的测试信息,获得所述测试信息包括的测试指令,并将所述测试信息包括的测试指令传输给所述测试应用执行。所述测试应用执行测试指令之后获得的测试指令的执行结果传输给所述测试组件,由所述功能测试组件封装为预设的格式,再返回给服务器。其中,所述功能测试组件可以通过统一回调函数将测试指令传输给所述测试应用,所述测试应用可以调用所述测试组件的接口,将测试指令的执行结果传输给所述测试组件。所述性能测试组件用于每隔预设时间间隔收集测试终端的性能信息,所述性能信息包括但不限于cpu、内存、rom、电量信息以及安卓系统版本等。所述预设时间间隔根据是需要进行设置,本发明实施例不做限定。需要说明的是,所述测试组件是预先开发的,可以安装在测试终端2上,辅助对不同的测试应用进行测试。

下面以测试终端作为执行主体为例,来说明本发明实施例提供的安卓应用的测试方法的实现过程。

图2是本发明第二实施例提供的安卓应用的测试方法的流程示意图,如图2所示,本发明实施例提供的安卓应用的测试方法,包括:

s201、启动测试应用并启动测试组件;

具体地,测试人员在测试终端启动测试应用,并启动测试组件。所述测试组件实现所述测试终端与所述服务器之间的信息交互。其中,所述服务器发送的信息可以通过所述测试组件接收并解析,所述测试应用反馈给所述服务器的信息可以通过所述测试组件进行封装发送给所述服务器。

s202、通过所述测试组件向服务器发送设备启动信息;

具体地,所述测试终端在所述测试应用启动之后,会通过所述测试组件向所述服务器发送设备启动信息。其中,所述设备启动信息可以包括时间戳、设备型号、设备标识、物理地址、安卓系统版本号等信息,根据实际需要进行设置,本发明实施例不做限定。

s203、通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

具体地,所述服务器会接收所述设备启动信息,然后向所述测试终端发送测试信息,所述测试信息可以包括时间戳、执行标识、物理地址、测试指令等信息,根据实际需要进行设置,本发明实施例不做限定。所述测试终端可以通过所述测试组件接收并解析所述测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。所述服务器发送的测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。所述服务器可以发送多条测试信息,根据实际需要进行设置,本发明实施例不做限定。其中,所述测试指令是预设的,所述测试指令与测试步骤一一对应。所述执行标识用于指示执行所述测试信息包括的测试指令的测试终端,所述执行标识可以采用测试终端的设备标识。

例如,所述测试信息包括执行标识、物理地址和测试指令,所述测试终端通过测试组件从所述测试信息解析获得执行标识和物理地址,如果所述物理地址为所述测试终端的物理地址,并且所述执行标识与所述测试终端的设备标识相同,那么可以确定所述测试信息是发送给所述测试终端的,会进行解析获得测试指令,将所述测试指令传输给测试应用,供所述测试应用执行。

s204、通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

具体地,所述测试应用会将每条测试指令的执行结果传输给所述测试组件,所述测试终端会通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。其中,所述第一响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,根据实际需要进行设置,本发明实施例不做限定。所述测试终端可以向所述服务器返回一个第一响应信息,也可以返回两个及两个以上的第一响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第一响应信息包括但不限于时间戳、测试指令、指令编号、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

例如,在测试终端a上对测试应用a进行测试,对测试应用a的测试包括五个测试步骤,预先设置每个测试步骤对应的测试指令。在测试终端a上启动测试应用a和测试组件x之后,测试终端a会通过测试组件x向服务器b发送设备启动信息,上述设备启动信息包括时间戳,测试终端a的设备型号、物理地址和安卓系统版本号。服务器b接收到上述设备启动信息之后,会逐一地向测试终端a发送测试信息,每条测试信息包括一条测试指令,所述测试信息包括时间戳、测试终端a的设备型号、物理地址和测试指令。测试终端a可以通过测试组件x接收并解析所述测试信息,从所述测试信息中获得测试指令供测试应用a执行,获得测试指令的执行结果。测试终端a会通过测试组件x逐一地向服务器b返回第一响应信息,每次返回的第一响应信息包括一条测试指令的执行结果。其中,服务器b在发送第一条测试信息之后,以后发送的每条测试信息都需要在满足测试信息发送条件之后发送,上述测试信息发送条件包括接收到上一条测试信息的响应信息或者当前时间与上一条测试信息的发送时间的时间差大于设定时间。

本发明实施例提供的安卓应用的测试方法,能够启动测试应用并启动测试组件,通过测试组件向服务器发送设备启动信息,通过测试组件接收并解析服务器发送的测试信息,获得测试信息包括的测试指令供测试应用执行,获得每条测试指令的执行结果,通过测试组件向服务器返回第一响应信息,无需root权限以及复杂的接入步骤,即可实现对安卓应用的测试,提高了安卓应用测试的便捷性。

图3是本发明第三实施例提供的安卓应用的测试方法的流程示意图,如图3所示,在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

s301、通过所述测试组件接收所述服务器发送的分组指令并订阅分组标识对应的消息主题;其中,所述分组指令包括所述分组标识和所述消息主题;

具体地,所述服务器在接收到所述测试终端发送的设备启动信息之后,可以向所述测试终端发送分组指令。所述测试终端可以通过所述测试组件接收所述服务器发送的分组指令,并订阅分组标识对应的消息主题,所述分组标识对应的消息主题即所述分组指令包括的消息主题。通过订阅消息主题可以接收到所述服务器通过消息主题发布的测试信息。

s302、通过所述测试组件接收所述服务器发布的与所述分组标识对应的测试信息,并通过所述测试组件解析与所述分组标识对应的测试信息,获得与所述分组标识对应的测试信息包括的测试指令供所述测试应用执行,获得与所述分组标识对应的每条测试指令的执行结果;

具体地,所述服务器会通过与所述分组标识对应的消息主题发布与所述分组标识对应的测试信息。所述测试终端可以通过所述测试组件接收与所述分组标识对应的测试信息,并通过所述测试组件解析与所述分组标识对应的测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。所述服务器发布的与所述分组标识对应测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。所述服务器可以发布多条与分组标识对应测试信息,根据实际需要进行设置,本发明实施例不做限定。

s303、通过所述测试组件发布第二响应信息,所述第二响应信息包括与所述分组标识对应的测试指令的执行结果。

具体地,所述测试应用会将每条测试指令的执行结果传输给所述测试组件,所述测试终端会通过所述测试组件发布第二响应信息,所述第二响应信息包括每条测试指令的执行结果。其中,所述第二响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,本发明实施例不做限定。所述测试终端可以发布一次第二响应信息,也可以发布两次及两次以上的第二响应信息,根据实际需要进行设置,本发明实施例不做限定。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

定期收集性能信息并通过所述测试组件发送给所述服务器。

具体地,在对所述测试终端进行测试过程中,所述测试终端可以定期收集所述测试终端的性能信息,然后通过所述测试组件将所述测试终端的性能信息发送给所述服务器。其中,所述性能信息包括但不限于cpu、内存、rom、电量信息以及安卓系统版本等。所述定期根据实际需要进行设置,例如每5分钟发送一次,本发明实施例不做限定。

下面以服务器作为执行主体为例,来说明本发明实施例提供的安卓应用的测试方法的实现过程。

图4是本发明第四实施例提供的安卓应用的测试方法的流程示意图,如图4所示,本发明实施例提供的安卓应用的测试方法包括:

s401、接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;

具体地,测试人员在测试终端启动测试应用并启动测试组件之后,所述测试终端会通过所述测试组件向服务器发送设备启动信息。所述服务器会接收所述设备启动信息。其中,所述设备启动信息可以包括时间戳、设备型号、设备标识、物理地址、安卓系统版本号等信息,根据实际需要进行设置,本发明实施例不做限定。

s402、向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;

具体地,所述服务器在接收到所述启动信息之后,可以向所述测试终端发送测试信息,所述测试终端可以通过所述测试组件接收并解析所述测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。其中,所述测试信息可以包括时间戳、执行标识、物理地址、测试指令等信息,根据实际需要进行设置,本发明实施例不做限定。所述测试指令是预设的。

s403、接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

具体地,所述测试应用会将每条测试指令的执行结果传输给所述测试组件,所述测试终端会通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括所述测试指令的执行结果。所述服务器会接收所述第一响应信息。其中,所述第一响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,根据实际需要进行设置,本发明实施例不做限定。所述测试终端可以向所述服务器返回一个第一响应信息,也可以返回两个及两个以上的第一响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第一响应信息包括但不限于时间戳、测试指令、指令编号、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

本发明实施例提供的安卓应用的测试方法,能够接收测试终端发送的设备启动信息,向测试终端发送测试信息,以使得测试终端通过测试组件接收并解析测试信息,获得测试信息包括的测试指令供测试应用执行,获得每条测试指令的执行结果,接收测试终端返回的第一响应信息,无需root权限以及复杂的接入步骤,即可实现对安卓应用的测试,提高了安卓应用测试的便捷性。

图5是本发明第五实施例提供的安卓应用的测试方法的流程示意图,如图5所示,在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

s501、接收各个测试终端的设备启动信息;

具体地,测试人员会在各个测试终端上启动测试应用和测试组件。各个测试终端会通过各自的测试组件分别向所述服务器发送设备启动信息。所述服务器会接收各个测试终端的设备启动信息。

s502、向属于预设分组的各个测试终端发送分组指令,以使得各个测试终端通过各自的测试组件接收所述分组指令并订阅与分组标识对应的消息主题;其中,所述分组指令包括所述分组标识和消息主题;

具体地,所述服务器在接收到各个测试终端的设备启动信息之后,会判断各个设备终端是否属于预设分组,对于属于所述预设分组的每个终端设备发送分组指令。所述预设分组内的每个测试终端可以通过各自的测试组件接收所述服务器发送的分组指令,并订阅与分组标识对应的消息主题,所述分组标识对应的消息主题即所述分组指令包括的消息主题。所述测试终端通过订阅消息主题可以接收到所述服务器通过消息主题发布的测试信息。其中,所述预设分组是预先设置的,将需要批量测试的测试终端设置相同的分组标识。每个预设分组里包括各个测试终端的设备标识、分组标识和消息主题。所述分组标识与预设分组一一对应,所述消息主题与所述分组标识一一对应。

s503、发布与所述分组标识对应的测试信息,以使得各个测试终端通过各自的测试组件接收并解析与所述分组标识对应的测试信息,获得与所述分组标识对应的测试信息包括的测试指令供各自的测试应用执行,获得各个测试终端的与所述分组标识对应的每条测试指令的执行结果;

具体地,所述服务器会通过与所述分组标识对应的消息主题发布与所述分组标识对应的测试信息。对于所述预设分组内的每个测试终端,可以通过所述测试终端的测试组件接收与所述分组标识对应的测试信息,并通过所述测试终端的测试组件解析与所述分组标识对应的测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得所述测试终端的与所述分组标识对应的每条测试指令的执行结果。所述服务器发布的测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。所述服务器可以发布多条与分组标识对应测试信息,根据实际需要进行设置,本发明实施例不做限定。

s504、接收各个测试终端通过各自的测试组件发布的与所述分组标识对应的第二响应信息,每个测试终端发布的第二响应信息包括每个测试终端的与所述分组标识对应的测试指令的执行结果。

具体地,各个测试终端会通过各自的测试组件发布与所述分组标识对应的第二响应信息,所述服务器会接收各测试终端发布的第二响应信息。其中,每个测试终端发布的第二响应信息包括每个测试终端的与所述分组标识对应的测试指令的执行结果。其中,所述测试终端发布的第二响应信息可以包括所述测试终端的与所述分组标识对应的一条测试指令的执行结果,也可以包括所述测试终端的与所述分组标识对应的多条测试指令的执行结果,本发明实施例不做限定。所述测试终端可以发布一次第二响应信息,也可以发布两次及两次以上的第二响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第二响应信息包括但不限于时间戳、测试指令、指令编号、分组标识、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

本发明实施例提供的安卓应用的测试方法,能够实现对多个测试终端的安卓应的测试,提高了测试效率。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

根据所述分组标识和所述预设分组的各个测试终端的设备标识,查询测试时间段内所述预设分组内各个测试终端对应的测试结果并归档。

具体地,所述服务器在完成所述预设分组内的各个测试终端的测试之后,可以根据所述分组标识和所述预设分组的各个测试终端的设备标识,从获得的第二响应信息中查询获得测试时间段内所述分组标识对应的预设分组内各个测试终端的对应的测试结果,即将预设分组内各个测试终端对应的第二响应信息作为预设分组内各个测试终端对应的测试结果。然后对预设分组内各个测试终端对应的测试结果进行归档。其中,所述测试结果包括各个测试终端的第二响应信息。所述测试时间段是所述预设分组内各个测试终端的开始时间和结束时间的时间差。

例如,可以根据所述测试终端的设备标识和对应的分组标识和查询所述服务器接收到的第二响应信息,如果所述第二响应信息中包括所述测试终端的设备标识和所述测试终端对应的分组标识并且所述第二响应信息包括的时间戳对应的时间在所述测试时间段内,那么将所述第二响应信息作为预设分组内所述测试终端对应的第二响应信息。所述服务器查询获得预设分组内各个测试终端对应的测试结果之后,根据预设分组内各个测试终端对应的测试结果包括的每条第二响应信息的时间戳,按照时间先后顺序,将预设分组内各个测试终端对应的第二响应信息进行排列,完成测试结果的归档。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

根据所述测试终端的设备标识查询所述测试终端对应的测试结果并归档。

具体地,所述服务器在完成所述测试终端的测试之后,可以根据所述测试终端的设备标识,从获得的第一响应信息中查询获得所述测试终端对应的测试结果,即将所述测试终端对应的所有第一响应信息作为所述测试终端对应的测试结果。然后对所述测试终端对应的测试结果进行归档。其中,所述测试结果包括所述测试终端的第一响应信息。

例如,可以根据所述测试终端的设备标识查询获得的第一响应信息,如果所述第一响应信息中包括所述测试终端的设备标识,那么将所述第一响应信息作为所述测试终端对应的第一响应信息。所述服务器查询获得所述测试终端对应的测试结果之后,根据所述测试终端对应的测试结果包括的每条第一响应信息的时间戳,按照时间先后顺序,将所述测试终端对应的第一响应信息进行排列,完成对所述测试终端对应的测试结果的归档。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试方法还包括:

接收所述测试终端通过所述测试组件定期发送的性能信息。

具体地,在对所述测试终端进行测试过程中,所述测试终端可以定期收集所述测试终端的性能信息,然后通过所述测试组件将所述测试终端的性能信息发送给所述服务器。所述服务器会接收所述测试终端发送的性能信息。其中,所述性能信息包括但不限于cpu、内存、rom、电量信息以及安卓系统版本等。

可理解的是,对于所述测试终端的性能信息,所述服务器可以按照接收的时间先后顺序将所述性能信息按照时间先后顺序进行归档。

所述服务器可以对单个测试终端进行测试,也可以对多个测试终端进行批量测试,还可以对多个存在信息交互的终端进行测试。所述服务器在完成测试之后,可以生成测试报告。对于存在执行结果为执行失败的测试终端,可以重点标注,并确认执行失败产生的步骤;对于测试成功的测试终端,可以记录测试执行时间和并绘制性能变化曲线。其中,性能变化曲线是基于测试终端定期发送的性能信息绘制的。

下面一个具体的实施例来说明本发明实施例提供的安卓应用的测试方法的实现过程。

需要对安装在5个不同品牌的智能手机上的测试应用b进行测试。假设对测试应用b的测试分为三个测试步骤,顺序执行,每个测试步骤设置了对应的测试指令,那么服务器b需要发布三次测试信息,每次发布的测试信息中包括一条测试指令,每条测试指令可以预先在服务器b上设置。如图6所示,具体的测试步骤如下:

第一步、接收各个智能手机的设备启动信息。测试人员在5个智能手机上启动测试应用b和测试组件c。5个智能手机分别通过各自的测试组件c向服务器b发送设备启动信息。服务器b会接收各个智能手机的设备启动信息。每个智能手机的设备启动信息包括时间戳、智能手机的型号、物理地址、智能手机的设备标识和安卓系统版本号。

第二步、判断各个智能手机是否属于预设分组。服务器b根据每个智能手机的设备标识,判断每个智能手机是否属于预设分组y。其中,测试人员在服务器b上预先将5个智能手机设置为一个预设分组y,预设分组y包括分组标识,5个智能手机的设备标识。如果获得属于预设分组y的5个智能手机,那么进入第三步;如果在设定时间内没有获得属于预设分组的5个智能手机,则进行缺少测试终端提示。

第三步、发送分组指令。服务器b分别向每个智能手机发送分组指令,所述分组指令包括分组标识和消息主题。其中,服务器b会订阅上述消息主题。在本发明实施例中可以通过mqtt协议实现服务器b与5个智能手机之间的信息交互。

第四步、订阅消息主题。5个智能手机通过各自的测试组件c接收上述分组指令,并订阅上述消息主题,以便于后续接收到服务器b发布的测试信息。

第五步、发布测试信息。服务器b发布上述分组标识对应的测试信息,消息代理将分组标识对应的测试信息转发给每个智能手机。其中,服务器b每次发布一条测试信息,每条测试信息中包括一条测试指令。

第六步、执行测试指令。每个智能手机会通过测试组件c接收并解析与分组标识对应的测试信息,获得与分组标识对应的测试信息包括的测试指令供测试应用b执行,获得测试指令的执行结果。每个智能手机会通过测试组件c向服务器b返回第二响应信息,第二响应信息包括每个智能手机的测试指令的执行结果。

第七步、判断是否完成测试。服务器b会接收各个智能手机返回的第二响应信息,如果接收到各个智能手机的第二响应信息是最后一个测试信息的反馈,在设定超时时间内没有接收到最后一个测试信息的反馈,或者5个智能手机都出现测试错误,那么完成测试,进行第八步。如果接收到的第二响应信息不是最后一个测试信息的反馈,那么会回到第五步继续进行测试,如果某个智能手机在设定超时时间内没有对测试信息进行反馈或者反馈的第二响应信息错误,那么不会继续对该智能手机进行测试。其中,智能手机都出现测试错误即智能手机反馈的第二响应信息错误。第二响应信息错误的判断根据实际需要进行设置,本发明实施例不做限定。例如,如果第二响应信息与正确预期内容不相符,那么第二响应信息错误。

第八步、定期上报性能信息。在订阅消息主题之后,每个智能手机会通过测试组件c每隔5秒钟,发送一次性能信息,直到完成测试。

第九步、整理测试结果。服务器b根据分组标识和各个智能手机的设备标识,查询测试时间段内各个智能手机对应的测试结果并归档,获得功能测试结果。服务器b将各个智能手机发送的性能信息按照时间先后顺序进行归档,获得性能测试结果。服务器b基于上述功能测试结果和性能测试结果,生成测试报告。在测试报告中,d对于出现第二响应信息错误或者响应超时的智能手机,可以重点标注,并确认对于的测试步骤;对于测试成功的智能手机,可以记录测试执行时间和并绘制性能变化曲线。

下面再以一个具体的实施例来说明本发明实施例提供的安卓应用的测试方法的实现过程。需要验证android9.0版本的两台测试终端上测试应用d的文字消息功能,具体测试过程为:登录测试应用d;用户甲通过测试终端c给测试终端d发送消息文字p,测试终端d收到消息文字p后,用户乙通过测试终端d向测试终端c回复文字q。两台测试终端上分别安装测试应用d和测试组件c。

测试准备工作:(1)为服务器b与测试终端c和测试终端d建立通信连接;(2)在服务器b上预先设置测试指令,测试指令包括:用户甲的登录指令、用户乙的登录指令、进入文字发送页面指令、第一消息发送指令和第二消息发送指令;设置测试终端c和测试终端d属于会话测试分组,会话测试分组包括分组标识001,测试终端c和测试终端d的设备标识;设置各个性能数据的性能阈值。

测试人员在测试终端c和测试终端d上分别启动测试应用d和测试组件c。测试终端c和测试终端d分别通过测试组件c上报各自的设备启动信息。测试终端c的设备启动信息包括时间戳、测试终端c的设备型号、测试终端c的设备标识、测试终端c的物理地址、android9.0版本。测试终端d的设备启动信息包括时间戳、测试终端d的设备标识、测试终端d的物理地址、android9.0版本。其中,测试组件c可以将设备启动信息封装为如下报文格式:

{

"timestamp":"十位时间戳",

"devicetype":"设备标识",

"deviceid":"物理地址",

"androidversion":"安卓系统版本号"

}

服务器b可以接收到测试终端c的设备启动信息和测试终端d的设备启动信息。基于测试终端c的设备标识和测试终端d的设备标识,可以确定测试终端c和测试终端d属于会话测试分组。假设服务器b先接收到测试终端c的设备启动信息,再接收到测试终端d的设备启动信息。

服务器b订阅消息主题会话测试,并分别向测试终端c和测试终端d发送分组指令。分组指令包括分组标识001和测试分组。测试终端c可以通过测试组件c接收到上述分组指令,并订阅消息主题测试分组。测试终端d可以通过测试组件c接收到上述分组指令,并订阅消息主题测试分组。服务器b可以将分组指令封装为如下报文格式:

{

"timestamp":"十位时间戳",

"groupid":"分组标识",

"deviceid":"设备标识",

"topic":"消息主题",

}

服务器b发布第一测试信息和第二测试信息,第一测试信息包括时间戳、测试终端c的设备标识和用户甲的登录指令,用户甲的登录指令携带用户甲的登录信息;第二测试信息包括时间戳、测试终端d的设备标识和用户乙的登录指令,用户乙的登录指令携带用户乙的登录信息。

测试终端c和测试终端d可以通过各自的测试组件c接收到第一测试信息和第二测试信息。测试终端c通过测试组件c解析第一测试信息和第二测试信息,根据第一测试信息包括的测试终端c的设备标识确定第一测试信息包括的测试指令是需要执行的测试指令,可以解析出用户甲的登录指令,将用户甲的登录指令传输给测试应用d,测试应用d执行用户甲的登录指令,通过用户甲的登录信息登录测试应用d,获得登录成功的执行结果并传输给测试组件c。测试终端c通过测试组件c发布登录成功的响应信息。同样,测试终端d通过测试组件c解析第一测试信息和第二测试信息,根据第二测试信息包括的测试终端d的设备标识确定第二测试信息包括的测试指令是需要执行的测试指令,可以解析出用户乙的登录指令,将用户乙的登录指令传输给测试应用d,测试应用d执行用户乙的登录指令,通过用户乙的登录信息在测试终端d登录测试应用d,获得登录成功的执行结果并传输给测试组件c。测试终端d通过测试组件c发布登录成功的响应信息。

服务器b在接收到测试终端c发布的登录成功的响应信息和测试终端d发布的登录成功的响应信息之后,会继续发布第三测试信息。第三测试信息包括时间戳、测试终端c的设备标识和进入文字发送页面指令和第一消息发送指令,所述第一消息发送指令携带消息文字p。测试终端c可以通过测试组件c接收并解析第三测试信息,获得进入文字发送页面指令和第一消息发送指令传输给测试应用d,测试应用d执行进入文字发送页面指令进入文字发送页面,并执行第一消息发送指令向用户乙发送消息文字p。测试应用d将发送成功的执行结果传输给测试组件c,测试终端c通过测试组件c发布发送成功的响应信息。测试终端d的测试应用d接收到消息文字p之后,测试应用d传输接收成功的执行结果给测试组件c,测试终端d通过测试组件c发布接收成功的响应信息。

服务器b在接收到测试终端c发布的发送成功的响应信息和测试终端d发布的接收成功的响应信息之后,会继续发布第四测试信息。第四测试信息包括时间戳、测试终端d的设备标识和进入文字发送页面指令和第二消息发送指令,所述第二消息发送指令携带回复文字q。测试终端d可以通过测试组件c接收并解析第四测试信息,获得进入文字发送页面指令和第二消息发送指令传输给测试应用d,测试应用d执行进入文字发送页面指令进入文字发送页面,并执行第二消息发送指令向用户甲发送回复文字q。测试应用d将发送成功的执行结果传输给测试组件c,测试终端d通过测试组件c发布发送成功的响应信息。测试终端c的测试应用d接收到回复文字q之后,测试应用d传输接收成功的执行结果给测试组件c,测试终端c通过测试组件c发布接收成功的响应信息。

服务器b在接收到测试终端d发布的发送成功的响应信息和测试终端c发布的接收成功的响应信息之后,测试流程结束。其中,在测试的过程中,测试终端c和测试终端d可以定期通过各自的测试组件c发布各自的性能信息。

其中,服务器b可以将上述各个测试信息封装为如下报文格式进行发布:

{

"timestamp":"十位时间戳",

"deviceid":"目标设备标识",

"commandid":"指令标识",

"commandname":"指令名称",

"otherobject":"交互对象",

"isgroup":"是否针对某个群体测试,若为false,则group字段不解析",

"group":{

"grouptype":"群体类型,可以是安卓版本,也可以是手机型号",

"msg":"群体信息,比如android9.0,比如huawei"

},

"data":{

"message":"指令信息",

"objects":"其他交互对象",

"back":"备用字段"

}

}

其中,测试终端c和测试终端d可以通过各自的测试组件c将第二响应信息封装为如下报文格式件发布:

{

"timestamp":"十位时间戳",

"deviceid":"设备标识",

"commandid":"指令标识",

"commandname":"指令名称",

"result":"指令执行结果",

"message":"接口调用或是功能执行的返回信息"

}

服务器b可以进行测试数据整理,根据消息主题、设备标识等信息整理出此次测试过程中的数据,并将功能测试阶段的数据与性能数据时间上对齐。然后通过流程是否执行完毕,以及性能信息包括的cpu、内存、rom、电量信息等性能数据是否达标判断测试是否通过。

服务器b还可以生成测试报告,通过提取各个测试步骤的执行时间点和同步的性能变化曲线,形成测试报告。

其中,服务器b通过对收发的指令进行分析来决策后续的执行步骤,或是从收发指令中提取特定的测试流程信息以记录测试结果,具体来说在一次测试中可能有以下几个环节:

(1)数据筛选环节:实际接收到的数据需要经过数据筛选环节,其主要目的是剔除无效报文,无效报文包括非本次测试报文、残缺报文、重复报文,异常报文等。

(2)单机测试流程提取环节:如果测试过程中单台测试终端无需与其他测试终端做交互,那么单台测试终端的响应信息集合便可以作为该测试终端的测试结果。该环节的目的在于从数据中提取出所有的单台测试终端测试结果。

(3)多机测试流程提取环节:测试过程中可能涉及到多台测试终端的应用交互的测试场景。该环节的目的在于从数据中提取所有交互场景下的测试结果。

(4)性能参数提取环节:在应用性能测试过程中需要提取测试终端的性能参数,应用的功能测试过程也可能需要辅助的性能分析,该环节负责提取性能信息并与测试对应的测试环节结合。

本发明实施例提供的安卓应用的测试方法,在对测试终端进行测试时无需root权限;测试人员配置一次测试策略,可以批量对测试终端执行测试,而且测试过程自动完成,无需人工干预;测试指令可以复用;能够自动提取数据生成测试报告。

图7是本发明第七实施例提供的安卓应用的测试装置的结构示意图,如图7所示,本发明实施例提供的安卓应用的测试装置包括启动模块701、第一发送模块702、第一测试模块703和返回模块704,其中:

启动模块701用于启动测试应用并启动测试组件;第一发送模块702用于通过所述测试组件向服务器发送设备启动信息;第一测试模块703用于通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;返回模块704用于通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

具体地,测试人员通过启动模块701启动测试应用,并启动测试组件。所述测试组件实现所述测试终端与所述服务器之间的信息交互。其中,所述服务器发送的信息可以通过所述测试组件接收并解析,所述测试应用反馈给所述服务器的信息可以通过所述测试组件进行封装发送给所述服务器。

在所述测试应用启动之后,第一发送模块702会通过所述测试组件向所述服务器发送设备启动信息。其中,所述设备启动信息可以包括时间戳、设备型号、设备标识、物理地址、安卓系统版本号等信息,根据实际需要进行设置,本发明实施例不做限定。

具体地,所述服务器会接收所述设备启动信息,然后向第一测试模块703发送测试信息,所述测试信息可以包括时间戳、执行标识、物理地址、测试指令等信息,根据实际需要进行设置,本发明实施例不做限定。第一测试模块703可以通过所述测试组件接收并解析所述测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。所述服务器发送的测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。所述服务器可以发送多条测试信息,根据实际需要进行设置,本发明实施例不做限定。其中,所述测试指令是预设的,所述测试指令与测试步骤一一对应。

所述测试应用会将每条测试指令的执行结果传输给所述测试组件,返回模块704会通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。其中,所述第一响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,根据实际需要进行设置,本发明实施例不做限定。返回模块704可以向所述服务器返回一个第一响应信息,也可以返回两个及两个以上的第一响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第一响应信息包括但不限于时间戳、测试指令、指令编号、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

本发明实施例提供的安卓应用的测试装置,能够启动测试应用并启动测试组件,通过测试组件向服务器发送设备启动信息,通过测试组件接收并解析服务器发送的测试信息,获得测试信息包括的测试指令供测试应用执行,获得每条测试指令的执行结果,通过测试组件向服务器返回第一响应信息,无需root权限以及复杂的接入步骤,即可实现对安卓应用的测试,提高了安卓应用测试的便捷性。

图8是本发明第八实施例提供的安卓应用的测试装置的结构示意图,如图8所示,在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括第一接收模块705、第二测试模块706和第一发布模块707,其中:

第一接收模块705用于通过所述测试组件接收所述服务器发送的分组指令并订阅分组标识对应的消息主题;其中,所述分组指令包括所述分组标识和所述消息主题;第二测试模块706用于通过所述测试组件接收所述服务器发布的与所述分组标识对应的测试信息,并通过所述测试组件解析与所述分组标识对应的测试信息,获得与所述分组标识对应的测试信息包括的测试指令供所述测试应用执行,获得与所述分组标识对应的每条测试指令的执行结果;第一发布模块707用于通过所述测试组件发布第二响应信息,所述第二响应信息包括与所述分组标识对应的测试指令的执行结果。

具体地,所述服务器在接收到设备启动信息之后,可以向第一接收模块705发送分组指令。第一接收模块705可以通过所述测试组件接收所述服务器发送的分组指令,并订阅分组标识对应的消息主题,所述分组标识对应的消息主题即所述分组指令包括的消息主题。通过订阅消息主题可以接收到所述服务器通过消息主题发布的测试信息。

所述服务器会通过与所述分组标识对应的消息主题发布与所述分组标识对应的测试信息。第二测试模块706可以通过所述测试组件接收与所述分组标识对应的测试信息,并通过所述测试组件解析与所述分组标识对应的测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。所述服务器发布的与所述分组标识对应测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。所述服务器可以发布多条与分组标识对应测试信息,根据实际需要进行设置,本发明实施例不做限定。

所述测试应用会将每条测试指令的执行结果传输给所述测试组件第一发布模块707会通过所述测试组件发布第二响应信息,所述第二响应信息包括每条测试指令的执行结果。其中,所述第二响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,本发明实施例不做限定。第一发布模块707会可以发布一次第二响应信息,也可以发布两次及两次以上的第二响应信息,根据实际需要进行设置,本发明实施例不做限定。

图9是本发明第九实施例提供的安卓应用的测试装置的结构示意图,如图9所示,在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括上报模块708,其中:

上报模块708用于定期收集性能信息并通过所述测试组件发送给所述服务器。

具体地,在进行测试过程中,上报模块708可以定期收集所述测试终端的性能信息,然后通过所述测试组件将性能信息发送给所述服务器。其中,所述性能信息包括但不限于cpu、内存、rom、电量信息以及安卓系统版本等。所述定期根据实际需要进行设置,例如每5分钟发送一次,本发明实施例不做限定。

图10是本发明第十实施例提供的安卓应用的测试装置的结构示意图,如图10所示,本发明实施例提供的安卓应用的测试装置包括第二接收模块1001、第二发送模块1002和第三接收模块1003,其中:

第二接收模块1001用于接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;第二发送模块1002用于向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;第三接收模块1003用于接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括至少一条测试指令的执行结果。

具体地,测试人员在测试终端启动测试应用并启动测试组件之后,所述测试终端会通过所述测试组件向第二接收模块1001发送设备启动信息。第二接收模块1001会接收所述设备启动信息。其中,所述设备启动信息可以包括时间戳、设备型号、设备标识、物理地址、安卓系统版本号等信息,根据实际需要进行设置,本发明实施例不做限定。

在接收到所述启动信息之后,第二发送模块1002可以向所述测试终端发送测试信息,所述测试终端可以通过所述测试组件接收并解析所述测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得每条测试指令的执行结果。其中,所述测试信息可以包括时间戳、执行标识、物理地址、测试指令等信息,根据实际需要进行设置,本发明实施例不做限定。所述测试指令是预设的。

所述测试应用会将每条测试指令的执行结果传输给所述测试组件,所述测试终端会通过所述测试组件向第三接收模块1003返回第一响应信息,所述第一响应信息包括所述测试指令的执行结果。第三接收模块1003会接收所述第一响应信息。其中,所述第一响应信息可以包括一条测试指令的执行结果,也可以包括多条测试指令的执行结果,根据实际需要进行设置,本发明实施例不做限定。所述测试终端可以向第三接收模块1003返回一个第一响应信息,也可以返回两个及两个以上的第一响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第一响应信息包括但不限于时间戳、测试指令、指令编号、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

本发明实施例提供的安卓应用的测试装置,能够接收测试终端发送的设备启动信息,向测试终端发送测试信息,以使得测试终端通过测试组件接收并解析测试信息,获得测试信息包括的测试指令供测试应用执行,获得每条测试指令的执行结果,接收测试终端返回的第一响应信息,无需root权限以及复杂的接入步骤,即可实现对安卓应用的测试,提高了安卓应用测试的便捷性。

图11是本发明第十一实施例提供的安卓应用的测试装置的结构示意图,如图11所示,在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括第四接收模块1004、第三发送模块1005、第二发布模块1006和第五接收模块1007,其中:

第四接收模块1004用于接收各个测试终端的设备启动信息;第三发送模块1005用于向属于预设分组的各个测试终端发送分组指令,以使得各个测试终端通过各自的测试组件接收所述分组指令并订阅与分组标识对应的消息主题;其中,所述分组指令包括所述分组标识和消息主题;第二发布模块1006用于发布与所述分组标识对应的测试信息,以使得各个测试终端通过各自的测试组件接收并解析与所述分组标识对应的测试信息,获得与所述分组标识对应的测试信息包括的测试指令供各自的测试应用执行,获得各个测试终端的与所述分组标识对应的每条测试指令的执行结果;第五接收模块1007用于接收各个测试终端通过各自的测试组件发布的与所述分组标识对应的第二响应信息,每个测试终端发布的第二响应信息包括每个测试终端的与所述分组标识对应的测试指令的执行结果。

具体地,测试人员会在各个测试终端上启动测试应用和测试组件。各个测试终端会通过各自的测试组件分别向第四接收模块1004发送设备启动信息。第四接收模块1004会接收各个测试终端的设备启动信息。

在接收到各个测试终端的设备启动信息之后,第三发送模块1005会判断各个设备终端是否属于预设分组,对于属于所述预设分组的每个终端设备发送分组指令。所述预设分组内的每个测试终端可以通过各自的测试组件接收第三发送模块1005发送的分组指令,并订阅与分组标识对应的消息主题,所述分组标识对应的消息主题即所述分组指令包括的消息主题。所述测试终端通过订阅消息主题可以接收到第三发送模块1005通过消息主题发布的测试信息。其中,所述预设分组是预先设置的,将需要批量测试的测试终端设置相同的分组标识。每个预设分组里包括各个测试终端的设备标识、分组标识和消息主题。所述分组标识与预设分组一一对应,所述消息主题与所述分组标识一一对应。

第二发布模块1006会通过与所述分组标识对应的消息主题发布与所述分组标识对应的测试信息。对于所述预设分组内的每个测试终端,可以通过所述测试终端的测试组件接收与所述分组标识对应的测试信息,并通过所述测试终端的测试组件解析与所述分组标识对应的测试信息,从所述测试信息中获得所述测试信息包括的测试指令,然后将所述测试信息包括的测试指令传输给所述测试应用,所述测试应用会执行所述测试信息包括的测试指令,获得所述测试终端的与所述分组标识对应的每条测试指令的执行结果。第二发布模块1006发布的测试信息可以包括一条测试指令,也可以包括多条测试指令,根据实际需要进行设置,本发明实施例不做限定。第二发布模块1006可以发布多条与分组标识对应测试信息,根据实际需要进行设置,本发明实施例不做限定。

各个测试终端会通过各自的测试组件发布与所述分组标识对应的第二响应信息,第五接收模块1007会接收各测试终端发布的第二响应信息。其中,每个测试终端发布的第二响应信息包括每个测试终端的与所述分组标识对应的测试指令的执行结果。其中,所述测试终端发布的第二响应信息可以包括所述测试终端的与所述分组标识对应的一条测试指令的执行结果,也可以包括所述测试终端的与所述分组标识对应的多条测试指令的执行结果,本发明实施例不做限定。所述测试终端可以发布一次第二响应信息,也可以发布两次及两次以上的第二响应信息,根据实际需要进行设置,本发明实施例不做限定。所述第二响应信息包括但不限于时间戳、测试指令、指令编号、分组标识、设备标识、测试指令的执行结果等信息,根据实际需要进行设置,本发明实施例不做限定。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括:

第一归档模块用于根据所述分组标识和所述预设分组的各个测试终端的设备标识,查询测试时间段内所述预设分组内各个测试终端对应的测试结果并归档。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括:

第二归档模块用于根据所述测试终端的设备标识查询所述测试终端对应的测试结果并归档。

在上述各实施例的基础上,进一步地,本发明实施例提供的安卓应用的测试装置还包括:

第六接收模块用于接收所述测试终端通过所述测试组件定期发送的性能信息。

本发明实施例提供的装置的实施例具体可以用于执行上述相应方法实施例的处理流程,其功能在此不再赘述,可以参照上述相应方法实施例的详细描述。

需要说明的是,本发明实施例提供的安卓应用的测试方法及装置可用于金融领域,也可用于除金融领域之外的任意技术领域,本发明实施例对安卓应用的测试方法及装置的应用领域不做限定。

图12是本发明第十二实施例提供的电子设备的实体结构示意图,如图12所示,该电子设备可以包括:第一处理器(processor)1201、第一通信接口(communicationsinterface)1202、第一存储器(memory)1203和第一通信总线1204,其中,第一处理器1201,第一通信接口1202,第一存储器1203通过第一通信总线1204完成相互间的通信。第一处理器1201可以调用第一存储器1203中的逻辑指令,以执行如下方法,例如包括:启动测试应用并启动测试组件;通过所述测试组件向服务器发送设备启动信息;通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行如下方法,例如包括:启动测试应用并启动测试组件;通过所述测试组件向服务器发送设备启动信息;通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储第一计算机程序,所述第一计算机程序使所述计算机执行如下方法,例如包括:启动测试应用并启动测试组件;通过所述测试组件向服务器发送设备启动信息;通过所述测试组件接收并解析所述服务器发送的测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;通过所述测试组件向所述服务器返回第一响应信息,所述第一响应信息包括至少一条测试指令的执行结果。

图13是本发明第十三实施例提供的电子设备的实体结构示意图,如图13所示,该电子设备可以包括:第二处理器(processor)1301、第二通信接口(communicationsinterface)1302、第二存储器(memory)1303和第二通信总线1304,其中,第二处理器1301,第二通信接口1302,第二存储器1303通过第二通信总线1304完成相互间的通信。第二处理器1301可以调用第二存储器1303中的逻辑指令,以执行如下方法,例如包括:接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行如下方法,例如包括:接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储第二计算机程序,所述第二计算机程序使所述计算机执行如下方法,例如包括:接收测试终端发送的设备启动信息;其中,所述设备启动信息是所述测试终端启动测试应用并启动测试组件之后通过所述测试组件发送的;向所述测试终端发送测试信息,以使得所述测试终端通过所述测试组件接收并解析所述测试信息,获得所述测试信息包括的测试指令供所述测试应用执行,获得每条测试指令的执行结果;其中,所述测试指令是预设的;接收所述测试终端返回的第一响应信息,所述第一响应信息是所述测试终端通过所述测试组件发送的;其中,所述第一响应信息包括所述测试指令的执行结果。

此外,上述的第一存储器1203和第二存储器1303中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,装置,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

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

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

在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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