应用自动化处理方法、装置、客户端及系统转让专利
申请号 : CN201810063168.5
文献号 : CN108415827B
文献日 : 2021-07-09
发明人 : 乔瑞凯 , 吕浩军 , 郭小溪
申请人 : 创新先进技术有限公司
摘要 :
权利要求 :
1.一种应用自动化处理方法,包括:在终端设备上运行的调试客户端向所述终端设备上运行的调试服务端发送权限申请请求消息;包括:所述调试客户端将预设密钥传输至与本地终端设备上运行的操作系统相对应调试连接工具;所述调试客户端利用所述调试连接工具生成权限申请请求消息,所述权限申请 请求消息包括所述预设密钥;所述调试客户端利用所述调试连接工具向所述调试服务端发送所述权限申请请求消息;所述预设密钥作为调试客户端的标识信息,是所述调试客户端与所述调试服务端建立连接的凭证;
所述调试服务端将用户反馈的授权消息发送给所述调试客户端;
所述调试客户端向所述调试服务端发送应用自动化操作指令消息;
所述调试服务端执行所述应用自动化操作指令消息所对应的操作;
所述调试服务端将所述操作的执行结果消息发送给所述调试客户端。
2.一种应用自动化处理方法,包括:向运行于本地终端设备上的调试服务端发送权限申请请求消息;包括:将预设密钥传输至与本地终端设备上运行的操作系统相对应调试连接工具;利用所述调试连接工具生成权限申请请求消息,所述权限申请 请求消息包括所述预设密钥;利用所述调试连接工具向所述调试服务端发送所述权限申请请求消息;所述预设密钥作为调试客户端的标识信息,是所述调试客户端与所述调试服务端建立连接的凭证;
接收所述调试服务端发送的用户反馈的授权消息;
向所述调试服务端发送应用自动化操作指令消息;
接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息。
3.根据权利要求2所述的方法,其中,所述方法还包括:基于所述本地终端设备上的本地通信端口与所述调试服务端通信。
4.根据权利要求2或3所述的方法,其中,所述向所述调试服务端发送应用自动化操作指令消息包括:
将应用自动化操作指令传输至与本地终端设备上运行的操作系统相对应调试连接工具;
利用所述调试连接工具将所述应用自动化操作指令转换成应用自动化操作指令消息;
利用所述调试连接工具向所述调试服务端发送所述应用自动化操作指令消息。
5.根据权利要求2或3所述的方法,其中,所述接收所述调试服务端发送的用户反馈的授权消息包括:
利用与本地终端设备上运行的操作系统相对应调试连接工具接收所述调试服务端发送的用户反馈的授权消息。
6.根据权利要求2或3所述的方法,其中,所述接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息包括:利用与本地终端设备上运行的操作系统相对应调试连接工具接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息。
7.根据权利要求6所述的方法,其中,所述方法还包括:利用所述调试连接工具接收所述调试服务端发送的应用自动化结束消息;
利用所述调试连接工具统计接收到执行结果消息。
8.一种应用自动化处理装置,包括:权限申请请求消息发送模块,用于向运行于本地终端设备上的调试服务端发送权限申请请求消息;所述权限申请请求消息发送模块包括:密钥传输单元,用于将预设密钥传输至与本地终端设备上运行的操作系统相对应调试连接工具;权限申请请求消息生产单元,用于利用所述调试连接工具生成权限申请请求消息,所述权限申请 请求消息包括所述预设密钥;权限申请请求消息发送单元,用于利用所述调试连接工具向所述调试服务端发送所述权限申请请求消息;所述预设密钥作为调试客户端的标识信息,是所述调试客户端与所述调试服务端建立连接的凭证;
授权消息接收模块,用于接收所述调试服务端发送的用户反馈的授权消息;
应用自动化操作指令消息发送模块,用于向所述调试服务端发送应用自动化操作指令消息;
执行结果消息接收模块,用于接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息。
9.根据权利要求8所述的装置,其中,所述装置还包括:本地通信端口,用于与所述调试服务端通信。
10.根据权利要求8或9所述的装置,其中,所述应用自动化操作指令消息发送模块包括:
应用自动化操作指令传输单元,用于将应用自动化操作指令传输至与本地终端设备上运行的操作系统相对应调试连接工具;
应用自动化操作指令消息生成单元,用于利用所述调试连接工具将所述应用自动化操作指令转换成应用自动化操作指令消息;
应用自动化操作指令消息发送单元,用于利用所述调试连接工具向所述调试服务端发送所述应用自动化操作指令消息。
11.根据权利要求8或9所述的装置,其中,所述授权消息接收模块包括:授权消息接收单元,用于利用与本地终端设备上运行的操作系统相对应调试连接工具接收所述调试服务端发送的用户反馈的授权消息。
12.根据权利要求8或9所述的装置,其中,所述执行结果消息接收模块包括:执行结果消息接收单元,用于利用与本地终端设备上运行的操作系统相对应调试连接工具接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息。
13.根据权利要求12所述的装置,其中,所述装置还包括:应用自动化结束消息接收模块,用于利用所述调试连接工具接收所述调试服务端发送的应用自动化结束消息;
执行结果消息统计模块,用于利用所述调试连接工具统计接收到执行结果消息。
14.一种应用自动化处理系统,包括:调试客户端,用于向本地的调试服务端发送权限申请请求消息;包括:将预设密钥传输至与本地终端设备上运行的操作系统相对应调试连接工具;利用所述调试连接工具生成权限申请请求消息,所述权限申请 请求消息包括所述预设密钥;利用所述调试连接工具向所述调试服务端发送所述权限申请请求消息;所述预设密钥作为调试客户端的标识信息,是所述调试客户端与所述调试服务端建立连接的凭证;以及用于向所述调试服务端发送应用自动化操作指令消息;
调试服务端,用于将用户反馈的授权消息发送给所述调试客户端;以及用于执行所述应用自动化操作指令消息所对应的操作;以及用于将所述操作的执行结果消息发送给所述调试客户端。
15.一种应用自动化处理客户端,包括处理器及存储器,所述存储器存储由所述处理器执行的计算机程序指令,所述计算机程序指令包括:向运行于本地终端设备上的调试服务端发送权限申请请求消息;包括:将预设密钥传输至与本地终端设备上运行的操作系统相对应调试连接工具;利用所述调试连接工具生成权限申请请求消息,所述权限申请 请求消息包括所述预设密钥;利用所述调试连接工具向所述调试服务端发送所述权限申请请求消息;所述预设密钥作为调试客户端的标识信息,是所述调试客户端与所述调试服务端建立连接的凭证;
接收所述调试服务端发送的用户反馈的授权消息;
向所述调试服务端发送应用自动化操作指令消息;
接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消息。
说明书 :
应用自动化处理方法、装置、客户端及系统
技术领域
背景技术
程序自动化测试等,常常需要获取一定的权限,以保证可以进行应用程序的自动化操作。
Debug Bridge,调试桥)作PC端与终端设备之间的通信桥梁,具体的,所述PC端可以基于Adb
向终端设备上的Adb服务端请求权限;在获得权限之后,可以对终端设备上的应用程序进行
应用自动化处理。但上述基于Adb的方案中,需要终端设备与PC端时刻保持稳定连接,但位
于两台设备上的终端设备与PC端需要通过数据线或网络建立连接,存在连接不稳定的情
况。因此,需要提供更稳定或更可靠的方案。
发明内容
性。
所述调试客户端。
行应用自动化处理过程中需要借助数据线或网络建立通信连接所带来的限制和连接不稳
定的问题,可以大大提高应用自动化处理过程中的通信连接的稳定性。
附图说明
附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造
性劳动的前提下,还可以根据这些附图获得其他的附图。
具体实施方式
的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,
本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于
本说明书保护的范围。
智能手表、智能眼镜、智能头盔等。当然,所述应用自动化系统并不限于上述具有一定实体
的电子设备,其还可以为运行于上述电子设备中的软体。另外,所述应用自动化系统运行有
第一系统,所述第一系统可以包括但不限于Android、Macos、Linux、Windows和Solaris等操
作系统。
用自动化处理系统可以设置一个通信端口socket供所述调试客户端和所述调试服务端进
行数据交互。另外,所述调试客户端设置有与所述应用自动化系统运行有的操作系统相对
应的调试连接工具;所述调试客户端可以基于所述调试连接工具建立与所述调试服务端之
间的连接。
说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可
以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的
一种方式,不代表唯一的执行顺序。在实际中的系统或客户端产品执行时,可以按照实施例
或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具
体的如图2所示,所述方法可以包括:
上的调试服务端发送权限申请请求消息。具体的,可以包括:
有与本地终端设备上运行的操作系统相对应调试连接工具。所述调试连接工具作为相应的
调试客户端与调试服务端之间的通信桥梁。
法。
试客户端。相应的,所述调试客户端可以利用与本地终端设备上运行的操作系统相对应调
试连接工具接收所述调试服务端发送的用户反馈的授权消息,进而可以建立调试客户端与
调试服务端之间的连接。
工具可以将应用自动化操作指令消息转换为调试连接工具可以识别的格式。
解析器解析并执行所述应用自动化操作指令所对应的操作。
连接工具接收所述调试服务端发送的所述应用自动化操作指令消息所对应的执行结果消
息,完成当前的应用自动化处理。
化操作完成。相应的,所述调试服务端将应用自动化结束消息发送给所述调试客户端;
述调试连接工具统计接收到执行结果消息,将统计到的执行结果作为当前的应用自动化处
理结果数据,完成当前的应用自动化处理。
格式可以为Adb格式。
Arg0 Int
Arg1 Int
Payload Array
PayloadLength Int
Checksum Int
Magic Int
据,数据类型为数组;PayloadLength表示传输的有效数据的长度,数据类型为整型;
Checksum表示校验码,数据类型为整型;Magic表示Command的取反,数据类型为整型;这里
PayloadLength、Checksum和Magic可以用于校验证消息有效性。另外,在实际应用中,
Command、Arg0、Arg1、Magic、PayloadLength、Checksum为消息的头信息,一般为4个字节。
理,解决了在不同设备上进行应用自动化处理过程中需要借助数据线或网络建立通信连接
所带来的限制和连接不稳定的问题,可以大大提高应用自动化处理过程中的通信连接的稳
定性。
个具体的场景示例中,以运行有Android操作系统的应用自动化处理系统进行应用自动化
处理为例,Adb客户端可以向Adb服务端申请权限,在获得权限之后,可以建立Adb客户端于
Adb服务端之间的连接,进而可以实现应用自动化处理。
后,可以相互进行通信。
Adb格式的权限申请请求消息,所述权限申请请求可以包括所述预设密钥;然后,可以利用
所述Adblib将所述权限申请请求消息发送给所述Adb服务端。
客户端发送授权消息,进而建立Adb客户端与Adb服务端之间的连接。
动化操作指令传输至Adblib,利用Adblib将该应用自动化操作指令生成Adb格式的应用自
动化操作指令消息,并利用利用Adblib将该应用自动化操作指令消息发送给所述Adb服务
端,并等待操作请求的执行结果消息和应用自动化结束消息。
序指令工具可以将应用自动化操作指令消息转换为Adblib可以识别的格式。
果通过Adblib反馈给Adb客户端。
相应的,在Adb客户端发送应用自动化操作指令消息之后,可以等待Adb服务端反馈应用自
动化结束消息;并在接收到应用自动化结束消息之后,利用Adblib统计接收到的执行结果
消息,完成当前的应用自动化处理。
可以不受时空限制,且连接更加稳定。
流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操
作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的
执行顺序。在实际中的系统或客户端产品执行时,可以按照实施例或者附图所示的方法顺
序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图3所示,所述方
法可以包括:
请求消息。具体的,可以包括:
通信桥梁。
法。
对应调试连接工具接收所述调试服务端发送的用户反馈的授权消息,进而可以建立调试客
户端与调试服务端之间的连接。
工具可以将应用自动化操作指令消息转换为调试连接工具可以识别的格式。
通过相应的调试连接工具反馈给调试客户端。
结果消息,完成当前的应用自动化处理。
化操作完成。相应的,所述方法还可以包括:
结果消息,将统计到的执行结果作为当前的应用自动化处理结果数据,完成当前的应用自
动化处理。
理,解决了在不同设备上进行应用自动化处理过程中需要借助数据线或网络建立通信连接
所带来的限制和连接不稳定的问题,可以大大提高应用自动化处理过程中的通信连接的稳
定性。
果消息。
如使用android、iOS系统程序设计语言在智能终端实现,以及基于量子计算机的处理逻辑
实现等。如图6所示,图6是根据本说明书的一示例性实施例的应用自动化处理客户端的示
意结构图。在硬件层面,该客户端可以包括处理器、内部总线、网络接口、内存以及非易失性
存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的
计算机程序到内存中然后运行,在逻辑层面上形成词串识别装置。当然,除了软件实现方式
之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说
以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
括:
适当组合。本申请实施例所述的存储器可以是用于保存信息的记忆设备。在数字系统中,能
保存二进制数据的设备可以是存储器;在集成电路中,一个没有实物形式的具有存储功能
的电路也可以为存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也可以叫存储
器等。实现的时候,该存储器也可以采用云存储器的方式实现,具体实现方式,本说明书不
错限定。
自动化处理,解决了在不同设备上进行应用自动化处理过程中需要借助数据线或网络建立
通信连接所带来的限制和连接不稳定的问题,可以大大提高应用自动化处理过程中的通信
连接的稳定性。
执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺
序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可
以的或者可能是有利的。
而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。
设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因
此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件
(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate
Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员
自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作
专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻
辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,
而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言
(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL
(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description
Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL
(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby
Hardware Description Language)等,目前最普遍使用的是VHDL(Very‑High‑Speed
Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应
该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,
就可以很容易得到实现该逻辑方法流程的硬件电路。
读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,
ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制
器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存
储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以
纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使
得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实
现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种
功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视
为既可以是实现方法的软件模块又可以是硬件部件内的结构。
人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航
设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的
组合。
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
示例。
计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动
态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除
可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、
数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储、石墨烯存储或其他
磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文
中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据
信号和载波。
括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要
素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境
中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块
可以位于包括存储设备在内的本地和远程计算机存储介质中。
服务端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方
法实施例的部分说明即可。
修改、等同替换、改进等,均应包含在权利要求范围之内。