CN111444095A - 移动设备的测试平台系统和测试方法 - Google Patents
移动设备的测试平台系统和测试方法 Download PDFInfo
- Publication number
- CN111444095A CN111444095A CN202010217330.1A CN202010217330A CN111444095A CN 111444095 A CN111444095 A CN 111444095A CN 202010217330 A CN202010217330 A CN 202010217330A CN 111444095 A CN111444095 A CN 111444095A
- Authority
- CN
- China
- Prior art keywords
- test
- mobile device
- response data
- server
- mobile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 306
- 238000010998 test method Methods 0.000 title claims description 12
- 230000004044 response Effects 0.000 claims description 57
- 238000000034 method Methods 0.000 claims description 27
- 239000003795 chemical substances by application Substances 0.000 description 29
- 238000010586 diagram Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种移动设备的测试平台系统,用于一个或多个测试端远程测试一个或多个移动设备,包括测试端、服务器、代理和移动设备。在该平台系统上移动设备被统一管理,实现了多个测试用户对多台移动设备的协同测试。
Description
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种移动设备的测试平台和测试方法。
背景技术
iOS移动端设备对比,Android设备的品牌众多、机型众多,呈现出一定的多样性,这决定了在Android移动端软件测试的过程中需要大量的兼容性测试工作。在实际的测试工作中大量的移动端设备又会带来设备的管理、维护等工作,这对测试人员来讲也是挑战。
要确保Android应用具有更高的质量,那么就必须知道应用在各类设备上具备什么样的表现,测试工作中需要依次在各类设备上进行重复性的操作,这样来达到兼容性测试的目的,不仅仅效率低下而且过程乏味。并且,随着软件的复杂度在不断的提高,人员分工、分布也在变得更加复杂,在测试工作中,当发现软件存在问题时,测试人员和开发人员往往需要经过复杂的沟通之后才能解决问题,这里面包括应用的安装、使用、问题的复现方式、步骤等等。
发明内容
有鉴于此,本发明提供了一种移动设备测试平台,在该平台上移动设备被统一管理,实现了多个测试用户对多台移动设备的协同测试。
根据本发明的第一方面,提供了一种移动设备的测试平台系统,用于一个或多个测试端远程测试一个或多个移动设备,包括:
一个或多个测试端,用于向服务器发送针对移动设备的测试指令,所述测试指令包括所述测试端的标识;
服务器,用于存储每个移动设备的测试指令队列,所述服务器还用于根据所述测试端的标识确定与所述测试端相关联的移动设备,将所述测试指令复制到所确定的移动设备的测试指令队列中;
代理,用于从所述服务器接收测试指令并转发到移动设备;
一个或多个移动设备,用于接收测试指令、产生测试响应数据并发送测试响应数据到代理,
其中所述服务器还用于存储每个移动设备的测试响应数据队列,从所述代理接收测试响应数据和加入到所述测试响应数据队列,所述测试响应数据包括移动设备的标识,所述服务器还用于根据所述移动设备的标识确定与所述移动设备相关联的测试端,向所确定的测试端发送所述测试响应数据的副本。
在一个可能的实施例中,所述服务器存储所述一个或多个测试端和所述一个或多个移动设备之间的测试关系表,所述服务器基于所述测试关系表确定与所述测试端相关联的移动设备和与所述移动设备相关联的测试端。
在一个可能的实施例中,所述测试端显示多个测试窗口,每个测试窗口显示对应的移动设备的实时界面图,其中所述测试指令基于在一个测试窗口中的操作而产生。
在一个可能的实施例中,所述测试端还用于根据该测试窗口的位置、大小、操作的位置,确定该操作关于对应的移动设备的相对位置,所述服务器还用于根据所述相对位置复制测试指令到所确定的移动设备的测试指令队列中。
在一个可能的实施例中,所述测试响应数据是移动设备的实时界面的图片流。
在一个可能的实施例中,所述图片流是经过压缩和/或降帧的。
在一个可能的实施例中,所述服务器连接到多个代理,每个代理连接到多个移动设备。
在一个可能的实施例中,所述测试端经由websocket连接到所述服务器,所述服务器经由socket连接到所述代理,所述代理与所述移动设备经由有线或无线方式连接。
根据本发明的第二方法,提供了一种移动设备的测试方法,用于多个测试端远程测试多个移动设备,所述测试方法包括:接收一个或多个测试端发送的针对移动设备的测试指令,所述测试指令包括所述测试端的标识;根据所述测试端的标识确定与所述测试端相关联的一个或多个移动设备,并将所述测试指令复制到所确定的移动设备的测试指令队列中;根据所述测试指令队列,向所述一个或多个移动设备发送响应的测试指令;从所述一个或多个移动设备接收测试响应数据并加入到对应的测试响应数据队列,所述测试响应数据包括移动设备的标识;根据所述移动设备的标识确定与所述移动设备相关联的一个或多个测试端;以及向所确定的一个或多个测试端发送所述测试响应数据的副本。
在一个可能的实施例中,测试方法包括:存储所述一个或多个测试端和所述一个或多个移动设备之间的测试关系表,基于所述测试关系表确定与所述测试端相关联的移动设备和与所述移动设备相关联的测试端。
根据本发明的第三方面,还提供了一种移动设备的测试方法,用于多个测试端远程测试多个移动设备,包括:在测试端显示多个测试窗口,每个测试窗口显示所述多个移动设备中一个的实时界面图,基于在一个测试窗口中的操作而产生测试指令;以及在所述多个测试窗口中显示所述测试指令的测试响应数据,所述测试响应数据是对应的移动设备的实时界面的图片流,所述方法还包括接收其他测试端产生的测试指令的测试响应数据,并且在对应的测试窗口中显示。
在一个可能的实施例中,所述图片流是经过压缩和/或降帧的。
在一个可能的实施例中,该测试方法还包括:根据测试窗口的位置、大小、操作的位置,确定该操作关于对应的移动设备的相对位置,所述相对位置被包括在所述测试指令中,用于所述多个移动设备产生测试响应数据。
根据本发明的第四方面,提供了电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述第二方面和第三方面中任一项所述的方法。
根据本发明的第五方面,提供了一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上述第二方面和第三方面中任一项所述的方法。
相比传统的移动设备远程控制方案,本发明有如下优势:一、设备控制更加灵活:可以多人控制一台设备、可以一人控制多台设备,在权限和资源的控制下可以灵活运用资源提高测试效率。二、效率高,反馈快速直接:可以同时用多个设备打开应用app,直接查看app在各个设备上的表现如何,特别适合一些UI相关的测试工作,并且整个操作都是在线操作,开发人员和测试人员可以直接通过在线设备直接交流、反馈问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1A出了根据本发明实施例的一种用于测试移动设备的应用程序的用户界面的示意图。
图1B示出了根据本发明实施例的一种用于测试移动设备的应用程序的另一用户界面的示意图。
图2A示出了根据本发明实施例的用于测试移动设备的方法的示意图。
图2B示出了根据本发明实施例的创建PC代理和移动设备之间的端口映射的示意图。
图3示出了根据本发明实施例的用于实现移动设备的远程控制的方法的示意图。
图4A示出了根据本发明实施例的在web页面实现移动设备的远程控制的方法的示意图。
图4B示出了根据本发明实施例的在web页面采集用户操作位置的示意图。
图5示出了根据本发明实施例的移动设备的测试平台系统的示意图。
图6示出了根据本发明实施例的移动设备测试方法的web端示意界面图。
图7示出了根据本发明实施例的移动设备的测试方法的示意流程图。
图8示出了根据本发明另一实施例的移动设备的测试方法的示意流程图。
图9示出了用于实现本发明实施例的电子设备的结构示意图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。这里使用的词语“一”、“一个(种)”和“该”等也应包括“多个”、“多种”的意思,除非上下文另外明确指出。此外,在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
图1示出了根据本发明实施例的一种用于测试移动设备的应用程序的用户界面的示意图。
STF(Smartphone Test Farm)是一个web应用程序,用于从浏览器便捷的远程调试智能手机、智能手表和其他小工具。典型的用户界面如图1所示,左侧对应于被调试的智能手机的界面,右侧是调试操作界面。用户在使用STF时,可以在左侧的实时手机界面区域点击、移动、拖动光标,从而产生类似于手机触摸屏上的点击、滑动的操作。然而,现有的STF应用程序默认只能控制一台设备,无法满足控制多台设备的要求。
参考图1B,示出了用于测试移动设备的应用程序的另一用户界面的示意图。如图1B所示,当有人在使用这台设备时,其他人无法查看这台设备,无法做到多人调试同一设备。
本发明实现了一种移动设备的测试平台系统,其能够实现多个测试用户对多台移动设备远程控制、协同测试和同步显示。可以理解,多对多远程控制设备是由单个设备的控制开始,一直发展到多对多的远程控制,以下将设备本地控制、设备远程控制、web页面远程控制和多对多web页面远程控制等几个步骤描述具体的实现步骤。
图2A示出了根据本发明实施例的用于测试移动设备的方法的示意图。图2A所示的方案基于STF开源的Minicap和Minitouch,当受测的移动设备接入到个人电脑(PersonalComputer:PC)设备上时,PC上的代理程序(Agent)会执行如下几个步骤
·初始化Minicap/Minitouch
Minicap/Minitouch是由Android NDK开发的两款开源工具,Minicap用于获取Android设备界面数据,Minitouch用于调用系统接口发送操作指令。
根据本发明实施例,首先判断移动设备上是否已经存在了Minicap/Minitouch的可执行文件,如果没有则将文件通过adb push的方式传递到设备的指定目录,然后通过adbshell的方式启动Minicap/Minitouch程序,这样就相当于在设备上启动了两个服务。
这里,adb指的是安卓调试桥(Android Debug Bridge),是一个通用命令行工具,其允许与模拟器实例或连接的Android设备进行通信。它可为各种设备操作提供便利,如安装和调试应用,并提供对Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。
·端口转发(forward)映射
移动设备上初始化完成Minicap/Minitouch的服务之后,这个时候设备和PC是无法通信的,需要通过adb forward的方式,将设备上Minicap/Minitouch服务的端口和PC上的端口进行映射,这样就可以在PC上访问设备上的服务了。
图2B示出了根据本发明实施例的创建PC代理和移动设备之间的端口映射的示意图。adb forward的功能是建立一个转发,例如,可以执行指令adb forward tcp:11111tcp:22222,指令含义是,将PC端的11111端口收到的数据,转发给到手机中22222端口。但是,仅执行这个命令还不能转发数据,还需要完成两个步骤才能传数据。这两个步骤是:
(a)在设备端,建立一个端口为22222的server,并打开server到监听状态;
(b)在PC端,建立一个socket client端,连接到端口为11111的server上。
·建立socket通信连接
当维护设备的PC可以和设备通过端口映射调用服务之后,在PC上启动Agent服务和设备上的服务建立socket连接,建立连接之后首次获取数据需要按照Minicap的数据格式解析界面的图片数据,数据按照字节分段格式如下表1所示:
字节 | 长度 | 类型 | 说明 |
0 | 1 | unsigned char | 版本 |
1 | 1 | unsigned char | 头信息大小 |
2-5 | 4 | uint32(low endian) | 进程id |
6-9 | 4 | uint32(low endian) | 真实显示宽度(像素) |
10-13 | 4 | uint32(low endian) | 真实显示高度(像素) |
14-17 | 4 | uint32(low endian) | 虚拟显示宽度(像素) |
18-21 | 4 | uint32(low endian) | 虚拟显示高度(像素) |
22 | 1 | unsigned char | 显示朝向 |
23 | 1 | unsigned char | 奇异位符(Quirk bitflag) |
表1
·交互操作指令获取设备界面数据
当设备和PC存在双向的socket连接时,那么就可以在PC通过一定的指令来控制设备,同时可以拿到设备的界面图片数据实时渲染设备界面动态,达到在PC上可以操作设备同时可以看到设备界面的目的。
同时当一个PC上连接了多台设备时,分别为每一台设备映射不同的端口,启动对应的线程socket连接与之交互,这个就可以在PC本地对设备进行控制。
在实现PC Agent上控制多台设备之后,需要实现设备成规模的管理和部署,这样的目的是为了实现可以远程控制多台PC上的多台设备,如图3,示出了根据本发明实施例的用于实现移动设备的远程控制的方法的示意图。
图3中,服务端(例如,集中服务器或分布式服务器)可以经由例如socket连接方式连接到多个PC Agent。可以理解,一台PC Agent无论是从硬件或者操作系统软件上来说实际上可维护的设备是有限的,那么规模化的设备端部署可以如上图所示分为多个节点的方式来管理PCAgent和维护相关联的移动设备,这样就可以在服务端通过socket连接控制任意PC Agent上的任意多个设备。
图4A示出了根据本发明实施例的在web页面实现移动设备的远程控制的方法的示意图。如图4A所示,在web页面上会呈现一个移动设备的实时操作界面,当在这个界面上使用鼠标执行点击、滑动等操作时,会发送指令到服务端,然后复制指令分别发送到对应的PCAgent来控制不同的设备显示。也就是时候,可以仅在web端的一个移动设备的操作界面上进行操作,实现了单个操作在多台设备的远程控制并进行测试。
实际上,不同的设备其大小、分辨率等等都是不一样的,发送操作指令如何控制点击、滑动等操作的实际位置,解决方案如下。参照图4B,示出了根据本发明实施例的在web页面采集用户操作位置的示意图。
通过获取测试端web页面上的设备界面的固定位置、设备大小(或页面大小)、操作位置,这样就可以计算出操作位置相对于设备的位置百分比,将百分比数据发送到服务端,然后根据各个设备的信息将百分比换算成设备的操作的绝对位置即可。
图5示出了根据本发明实施例的移动设备的测试平台系统的示意图。图所示的平台系统包括:至少一个web端510、服务器520、PC代理530以及移动设备540,其中,web端510与服务器520之间通过websocket进行连接通信,服务器520与PC代理530端通过socket进行通信控制;PC代理530与设备540之间可以通过无线(如蓝牙、wifi)或者有线方式(如USB)进行连接。在一个实施例中,测试人员可以通过PC登陆web页面进行测试工作。
经由图5所示的平台系统,针对每一台移动设备,服务器520都会启动一个队列521来交互数据,这样可以做到一个测试人员可以同时对多个设备发送数据,也可以将一个移动设备的数据发送给多个人,即实现了多对对的远程控制。
web端510和移动设备540之间的数据交互操作指令和关于移动设备实时界面的图片流。本发明实现了一人同时操作多台设备和多人同时操作一台设备,具体描述如下。
(1)一人操作多个设备
从web端510发送操作指令后,在服务器处520进行操作指令复制,然后将复制的指令分别发送到多个设备的队列521内进行排队处理,这样就可以实现一台设备进行指令操作,多台设备同步执行这台设备的操作指令。
根据本发明实施例,web端510向服务器520发送针对一个或多个移动设备的测试指令,测试指令可以包括web端510的标识。服务器520处可以存储有测试关系表520,测试关系表520记录了多个web测试端与多个移动设备540之间的当前测试关系,例如,在测试关系表520可以记录每个web测试端当前正在测试的移动设备,相应地,测试关系表520也可以记录某个移动设备540当前正在被哪些web端测试,如下表2所示,其中“是”表示web端正在测试对应的移动设备,“否”表示不在测试中。
设备1 | 设备2 | 设备3 | 设备4 | …… | |
web端1 | 是 | 否 | 否 | 否 | N/A |
web端2 | 是 | 否 | 否 | 否 | N/A |
web端3 | 否 | 是 | 是 | 是 | N/A |
…… | N/A | N/A | N/A | N/A |
表2
服务器520存储了每个移动设备540的测试指令队列521,并根web端的标识确定该web端正在测试的移动设备540,测试指令复制到所确定的移动设备的测试指令队列521中。
接下来,对应的移动设备的代理530可以从服务器520接收上述测试指令并转发到移动设备540。受测的移动设备540在接收到测试指令后产生测试响应数据,例如通过上述Minicap捕捉到界面图片,打包压缩后并发送到代理530,进而经服务器520返回到web端510,在相应的测试窗口中显示移动设备540的实时界面。
(2)多人同时操作一台设备
多人同步操作:多个web端经由websocket同时操作某一设备540。在一个实施例中,多个web端发送操作执行指令,通过服务器520、代理530通知发送到设备去执行。类似地,多个web端510中的每个web端向服务器520发送针对该移动设备540的测试指令,测试指令包括web端510的标识。如上所述,这些测试指令被分配到该移动设备的测试指令队列,并依次被移动设备执行产生相应的测试响应数据,如界面图片流。
服务器520还可以存储每个移动设备540的测试响应数据队列(图5未示出),从代理530接收测试响应数据,加入到测试响应数据队列,测试响应数据可以包括移动设备540的标识。服务器520可以根据移动设备的标识确定与该移动设备相关联的测试web端510,例如,参考测试关系表,并且所确定的测试web端510发送测试响应数据的副本。
多web端同步显示特别适用于在针对app问题讨论处理时,一个人操作一台设备,而这个设备的显示需要多人看到,所以设备显示数据在返回到服务端时进行数据的复制,然后发送给不同的websocket链接,这样就可以做到一个人操作,多个人可以在web页面看见其操作的显示。
图6示出了根据本发明实施例的移动设备测试方法的web端示意界面图。在web端操作时选取第一个设备为模板,计算操作位置的比例,然后通过服务端的队列复制数据分发到其他的设备,各设备的操作反馈数据又会通过各自的队列返回,同时当多人打开对应的设备页面时,服务端跟根据用户数量从队列中复制出相应的流量,这样就可以达到多对多设备远程控制。
需要注意的是,目前大部分任务处理都是在内网环境,目前只是做了图片数据级的压缩,可以预见在网络环境较差的情况下,可能需要图片像素级的压缩处理,以适应远程测试的需要。因此,图片处理是远端控制的重要环节。
从目前比较主流移动设备的单个图片的大小约为1M左右,如果是高分辨率的设备或者iPad、AndroidPad等设备可能会更大,做纯数据压缩最多只能做到百KB大小的级别。在上面的前提下,可以牺牲一部分图片的清晰度来换取操作的流畅度和网络性能,可以先将原图按照比例等比压缩到一定大小,然后将压缩后的图片在页面上渲染到和设备同样大小,这样丢失的清晰度和压缩的比例有直接关系,在数据传输的过程中可以根据网络质量的好坏动态修改图片压缩的比例,或者降帧。
经过图片压缩和数据压缩,图片的传输量级可以缩小到十KB大小的级别,经过调整大部分设备图片数据的大小传递都在20KB上下浮动,并且同时具有较好的清晰度。
图7示出了根据本发明实施例的移动设备的测试方法的示意流程图。方法700可以用于多个测试端远程测试多个移动设备,例如,应用于上述参照图5描述测试平台系统的服务器。测试方法700包括:
在步骤710,接收一个或多个测试端发送的针对移动设备的测试指令,所述测试指令包括所述测试端的标识。例如,可以经由websocket连接从web端接收上述测试指令。测试指令可以是测试人员在web端的移动设备界面窗口中的操作而产生的,例如,根据窗口的位置、大小、操作的位置,确定该操作关于对应的移动设备的相对位置,相对位置的信息可以被包括在测试指令中。
在步骤720,根据所述测试端的标识确定与所述测试端相关联的一个或多个移动设备,并将所述测试指令复制到所确定的移动设备的测试指令队列中。在一个可能的实施例中,服务器可以存储有一个或多个测试端和一个或多个移动设备之间的测试关系表,该测试关系表记录了测web端与移动设备之间的当前测试状态。因此,可以根据该测试关系表确定当前与该web端相关联的移动设备和与移动设备相关联的web端。例如,当web端开启了多个测试窗口,每个测试窗口显示一个移动设备的界面图,则可以认为该web端与这些移动设备相关联,并记录在测试关系表中。
另外,在服务器中存储有与每个移动设备相联的测试指令队列和测试响应数据队列。测试指令队列包括将被依次发送到移动设备并执行的测试指令。
在步骤730,根据测试指令队列,向所确定的一个或多个移动设备发送响应的测试指令。在一个实施例,可以向这些移动设备的PC代理发送测试指令,然后由PC代理转发这些测试指令到移动设备。
在步骤740,从一个或多个移动设备接收测试响应数据并加入到对应的测试响应数据队列,测试响应数据包括移动设备的标识。在一个实施例,可以从这些移动设备的PC代理接收测试响应数据,PC代理用于从移动设备收集测试响应数据。可选的,PC代理可以本地对收集到测试响应数据,比如界面的图片流进行压缩和/或降帧处理。
在步骤750,根据移动设备的标识确定与移动设备相关联的一个或多个测试端。与步骤720类似,根据测试关系表确定与移动设备相关联的一个或多个测试端。
在步骤760,向所确定的一个或多个测试端发送测试响应数据的副本。如上所述,测试响应数据是移动设备的界面的图片流,因此,可以在这些测试端同步地实现移动设备的实时界面。
图8示出了根据本发明另一实施例的移动设备的测试方法的示意流程图。方法800可以用于多个测试端远程测试多个移动设备,例如,应用于上述参照图5描述测试平台系统的web端。方法800包括:
在步骤810,在测试端显示多个测试窗口,每个测试窗口显示多个移动设备中一个的实时界面图,
在步骤820,基于在一个测试窗口中的操作而产生测试指令;以及
在步骤830,在多个测试窗口中显示测试指令的测试响应数据,测试响应数据是对应的移动设备的实时界面的图片流;
方法840还包括步骤840,接收其他测试端产生的测试指令的测试响应数据,并且在对应的测试窗口中显示。需要注意的是,步骤840可以在方法800中任意时刻执行,不限于在步骤830之后。
图9示出了用于实现本发明实施例的电子设备的结构示意图。如图9所示,电子设备900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有电子设备900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,包括承载指令的在计算机可读介质,在这样的实施例中,该指令可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该指令被中央处理单元(CPU)901执行时,执行本发明中描述的各个方法步骤。
以上描述了本发明的示例实施例,相比传统的移动设备远程控制方案,本发明有如下优势:一、设备控制更加灵活:可以多人控制一台设备、可以一人控制多台设备,在权限和资源的控制下可以灵活运用资源提高测试效率。二、效率高,反馈快速直接:可以同时用多个设备打开应用app,直接查看app在各个设备上的表现如何,特别适合一些UI相关的测试工作,并且整个操作都是在线操作,开发人员和测试人员可以直接通过在线设备直接交流、反馈问题。
尽管已经描述了示例实施例,但是对于本领域技术人员来说显而易见的是,在不脱离本发明构思的精神和范围的情况下,可以进行各种改变和修改。因此,应当理解,上述示例实施例不是限制性的,而是说明性的。
Claims (15)
1.一种移动设备的测试平台系统,用于一个或多个测试端远程测试一个或多个移动设备,包括:
一个或多个测试端,用于向服务器发送针对移动设备的测试指令,所述测试指令包括所述测试端的标识;
服务器,用于存储每个移动设备的测试指令队列,所述服务器还用于根据所述测试端的标识确定与所述测试端相关联的移动设备,将所述测试指令复制到所确定的移动设备的测试指令队列中;
代理,用于从所述服务器接收测试指令并转发到移动设备;
一个或多个移动设备,用于接收测试指令、产生测试响应数据并发送测试响应数据到代理,
其中所述服务器还用于存储每个移动设备的测试响应数据队列,从所述代理接收测试响应数据和加入到所述测试响应数据队列,所述测试响应数据包括移动设备的标识,所述服务器还用于根据所述移动设备的标识确定与所述移动设备相关联的测试端,向所确定的测试端发送所述测试响应数据的副本。
2.如权利要求1所述的测试平台系统,其中,所述服务器存储所述一个或多个测试端和所述一个或多个移动设备之间的测试关系表,所述服务器基于所述测试关系表确定与所述测试端相关联的移动设备和与所述移动设备相关联的测试端。
3.如权利要求1所述的测试平台系统,其中,所述测试端显示多个测试窗口,每个测试窗口显示对应的移动设备的实时界面图,其中所述测试指令基于在一个测试窗口中的操作而产生。
4.如权利要求1所述的测试平台系统,其中,所述测试端还用于根据该测试窗口的位置、大小、操作的位置,确定该操作关于对应的移动设备的相对位置,所述服务器还用于根据所述相对位置复制测试指令到所确定的移动设备的测试指令队列中。
5.如权利要求1所述的测试平台系统,其中,所述测试响应数据是移动设备的实时界面的图片流。
6.如权利要求5所述的测试平台系统,所述图片流是经过压缩和/或降帧的。
7.如权利要求1-6中任一项所述的测试平台系统,其中,所述服务器连接到多个代理,每个代理连接到多个移动设备。
8.如权利要求1所述的测试平台系统,其中,所述测试端经由websocket连接到所述服务器,所述服务器经由socket连接到所述代理,所述代理与所述移动设备经由有线或无线方式连接。
9.一种移动设备的测试方法,用于多个测试端远程测试多个移动设备,所述测试方法包括:
接收一个或多个测试端发送的针对移动设备的测试指令,所述测试指令包括所述测试端的标识;
根据所述测试端的标识确定与所述测试端相关联的一个或多个移动设备,并将所述测试指令复制到所确定的移动设备的测试指令队列中;
根据所述测试指令队列,向所述一个或多个移动设备发送响应的测试指令;
从所述一个或多个移动设备接收测试响应数据并加入到对应的测试响应数据队列,所述测试响应数据包括移动设备的标识;
根据所述移动设备的标识确定与所述移动设备相关联的一个或多个测试端;以及
向所确定的一个或多个测试端发送所述测试响应数据的副本。
10.如权利要求9所述的测试方法,还包括:存储所述一个或多个测试端和所述一个或多个移动设备之间的测试关系表,基于所述测试关系表确定与所述测试端相关联的移动设备和与所述移动设备相关联的测试端。
11.一种移动设备的测试方法,用于多个测试端远程测试多个移动设备,包括:
在测试端显示多个测试窗口,每个测试窗口显示所述多个移动设备中一个的实时界面图,
基于在一个测试窗口中的操作而产生测试指令;以及
在所述多个测试窗口中显示所述测试指令的测试响应数据,所述测试响应数据是对应的移动设备的实时界面的图片流,
所述方法还包括接收其他测试端产生的测试指令的测试响应数据,并且在对应的测试窗口中显示。
12.如权利要求11所述的测试方法,所述图片流是经过压缩和/或降帧的。
13.如权利要求11所述的测试方法,还包括:
根据测试窗口的位置、大小、操作的位置,确定该操作关于对应的移动设备的相对位置,所述相对位置被包括在所述测试指令中,用于所述多个移动设备产生测试响应数据。
14.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求9至13中任一项所述的方法。
15.一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如权利要求9至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010217330.1A CN111444095A (zh) | 2020-03-25 | 2020-03-25 | 移动设备的测试平台系统和测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010217330.1A CN111444095A (zh) | 2020-03-25 | 2020-03-25 | 移动设备的测试平台系统和测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111444095A true CN111444095A (zh) | 2020-07-24 |
Family
ID=71629558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010217330.1A Pending CN111444095A (zh) | 2020-03-25 | 2020-03-25 | 移动设备的测试平台系统和测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444095A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286433A (zh) * | 2020-11-26 | 2021-01-29 | 山东浪潮商用系统有限公司 | 屏幕画面获取方法、装置及计算机可读介质以及测试端 |
CN113014996A (zh) * | 2021-02-18 | 2021-06-22 | 上海哔哩哔哩科技有限公司 | 视频生成方法及装置 |
CN117707877A (zh) * | 2024-02-05 | 2024-03-15 | 之江实验室 | 一种用于协议测试的Android模拟器及实现方法 |
CN117834695A (zh) * | 2024-03-05 | 2024-04-05 | 深圳市芯科云科技有限公司 | 智能手表的集中连接调试方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160044520A1 (en) * | 2014-08-11 | 2016-02-11 | Verizon Patent And Licensing Inc. | Mobile automation test platform |
CN105429773A (zh) * | 2014-09-18 | 2016-03-23 | 广州思林杰网络科技有限公司 | 一种分布式自动化测试系统及测试终端的管理配置方法 |
CN106681916A (zh) * | 2016-12-20 | 2017-05-17 | 广东小天才科技有限公司 | 一种应用功耗的测试方法、装置和系统 |
CN106681924A (zh) * | 2016-12-30 | 2017-05-17 | 深圳天珑无线科技有限公司 | 一种软件测试方法及系统 |
CN108804302A (zh) * | 2017-05-04 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 一种远程测试方法、系统及相关设备 |
CN109194535A (zh) * | 2018-07-24 | 2019-01-11 | 联宝(合肥)电子科技有限公司 | 一种终端测试系统及方法 |
CN109918289A (zh) * | 2019-01-16 | 2019-06-21 | 平安普惠企业管理有限公司 | 多设备在线测试方法、装置、计算机设备及存储介质 |
-
2020
- 2020-03-25 CN CN202010217330.1A patent/CN111444095A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160044520A1 (en) * | 2014-08-11 | 2016-02-11 | Verizon Patent And Licensing Inc. | Mobile automation test platform |
CN105429773A (zh) * | 2014-09-18 | 2016-03-23 | 广州思林杰网络科技有限公司 | 一种分布式自动化测试系统及测试终端的管理配置方法 |
CN106681916A (zh) * | 2016-12-20 | 2017-05-17 | 广东小天才科技有限公司 | 一种应用功耗的测试方法、装置和系统 |
CN106681924A (zh) * | 2016-12-30 | 2017-05-17 | 深圳天珑无线科技有限公司 | 一种软件测试方法及系统 |
CN108804302A (zh) * | 2017-05-04 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 一种远程测试方法、系统及相关设备 |
CN109194535A (zh) * | 2018-07-24 | 2019-01-11 | 联宝(合肥)电子科技有限公司 | 一种终端测试系统及方法 |
CN109918289A (zh) * | 2019-01-16 | 2019-06-21 | 平安普惠企业管理有限公司 | 多设备在线测试方法、装置、计算机设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286433A (zh) * | 2020-11-26 | 2021-01-29 | 山东浪潮商用系统有限公司 | 屏幕画面获取方法、装置及计算机可读介质以及测试端 |
CN113014996A (zh) * | 2021-02-18 | 2021-06-22 | 上海哔哩哔哩科技有限公司 | 视频生成方法及装置 |
CN117707877A (zh) * | 2024-02-05 | 2024-03-15 | 之江实验室 | 一种用于协议测试的Android模拟器及实现方法 |
CN117834695A (zh) * | 2024-03-05 | 2024-04-05 | 深圳市芯科云科技有限公司 | 智能手表的集中连接调试方法及系统 |
CN117834695B (zh) * | 2024-03-05 | 2024-05-31 | 深圳市芯科云科技有限公司 | 智能手表的集中连接调试方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6092381B2 (ja) | ウェブクライアントを介したリモートアプリケーションへのアクセスを提供する方法、システム、及びコンピュータ読取可能記憶媒体 | |
CN111444095A (zh) | 移动设备的测试平台系统和测试方法 | |
WO2019114185A1 (zh) | 一种app远程控制方法及相关设备 | |
CN108804302B (zh) | 一种远程测试方法、系统及相关设备 | |
US20140082511A1 (en) | Method and system for emulating desktop software applications in a mobile communication network | |
CN110659206B (zh) | 基于微服务的模拟架构建立方法、装置、介质及电子设备 | |
CN112799891B (zh) | iOS设备测试方法、装置、系统、存储介质及计算机设备 | |
CN107608901B (zh) | 基于Jmeter的测试方法及装置、存储介质、电子设备 | |
CN112860572B (zh) | 移动终端的云测试方法、装置、系统、介质、电子设备 | |
CN113608812B (zh) | 远程控制方法、装置、系统及存储介质 | |
CN110266701B (zh) | 智能设备数据传输方法、装置、介质及电子设备 | |
CN110275787B (zh) | 在线平台数据传输方法、装置、介质及电子设备 | |
CN109582317B (zh) | 用于调试寄宿应用的方法和装置 | |
CN114490383A (zh) | 远程调试系统、远程调试方法、计算设备和可读介质 | |
CN111104336B (zh) | 一种基于容器和vnc的服务接口在线测试方法及装置 | |
CN105262880A (zh) | 一种应用于WiFi网络的手机控制演示系统 | |
US6404430B1 (en) | Virtual space information processor | |
JPH0659934U (ja) | サーバー拡張用アーキテクチャ | |
CN117707702A (zh) | 一种在线ide的实现方法及系统 | |
CN111708595A (zh) | 一种基于可视化界面的远程交互协作方法及装置 | |
CN112671814B (zh) | 一种跨平台的设备开发方法、装置及系统 | |
CN107391354A (zh) | 自动监测终端性能的方法及系统、存储装置 | |
CN113835816A (zh) | 一种虚拟机桌面显示方法、装置、设备及可读存储介质 | |
CN114745313A (zh) | 终端远程测试方法、装置、电子设备和可读介质 | |
CN111124907A (zh) | 一种手机游戏测试方法、装置和服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200724 |