CN109600282A - 基于云真机的测试***及测试方法 - Google Patents
基于云真机的测试***及测试方法 Download PDFInfo
- Publication number
- CN109600282A CN109600282A CN201811598078.2A CN201811598078A CN109600282A CN 109600282 A CN109600282 A CN 109600282A CN 201811598078 A CN201811598078 A CN 201811598078A CN 109600282 A CN109600282 A CN 109600282A
- Authority
- CN
- China
- Prior art keywords
- prototype
- cloud
- screen picture
- server
- test
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及基于云真机的测试***,包括web客户端和服务器,所述web客户端与所述服务器通信连接;所述服务器还用于连接多个云真机;web客户端通过网页同时显示至少两个云真机的屏幕图像,获取针对目标云真机中设定软件的操作指令发送给所述服务器;服务器将接收到的测试指令发送给目标云真机;以及获取目标云真机执行测试指令之后的屏幕图像,作为新的屏幕图像发送给所述web客户端;web客户端更新所述网页中显示的所述目标云真机的屏幕图像。本发明实施例解决了现有远程测试环境无法对软件在不同类型的真机中的实际执行情况进行对比分析的问题,有利于提高测试效果。
Description
技术领域
本发明涉及云控平台技术领域,特别是涉及基于云真机的测试***及测试方法。
背景技术
智能终端应用软件测试是智能终端软件开发生命周期中的一项关键任务,主要任务是测试未发布的被测试软件在不同测试机型设备上的兼容性和测试效率等。
为了方便智能终端应用软件测试,行业内采用云真机控制平台进行测试。云真机控制平台包括测试终端和远程控制终端,测试终端连接一个或多个云真机。其中,远程控制终端通过网络连接测试终端,用于远程控制与测试终端连接的云真机,同时接收从测试终端转发的反馈信息;测试终端将远程控制终端发送的控制指令转发至相应的云真机,由云真机执行相应操作,或者,测试终端解析远程控制终端发送的控制指令,解析出远程控制终端进行远程控制的相应云真机及具体控制命令,并根据具体控制命令控制相应云真机执行相应操作。
在实现本发明的过程中,发明人发现现有技术中存在如下问题,目前云真机控制平台,测试人员通过远程控制终端一次只能显示一个云真机的测试结果,无法对软件在不同类型的真机中的实际执行情况进行对比分析,影响测试效果。
发明内容
基于此,有必要针对现有方式的测试平台无法对软件在不同类型的真机中的实际执行情况进行对比分析的问题,提供一种基于云真机的测试***及测试方法。
一方面,本发明实施例提供一种基于云真机的测试***,包括web客户端和服务器,所述web客户端与所述服务器通信连接;所述服务器还用于连接多个云真机;
所述web客户端,用于在通过网页同时显示至少两个云真机的屏幕图像的状态下,获取针对目标云真机中设定软件的操作指令,作为第一测试指令,将所述第一测试指令发送给所述服务器;所述目标云真机为所述至少两个云真机中的云真机;
所述服务器,用于根据所述第一测试指令控制所述目标云真机中所述设定软件执行所述第一测试指令;以及获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像,将所述新的屏幕图像发送给所述web客户端;
所述web客户端,用于根据所述屏幕图像,更新所述网页中显示的所述目标云真机的屏幕图像。
在其中一个实施例中,所述web客户端,还用于接收用于启动多机同屏的操作指令,作为第二测试指令,将所述第二测试指令发送给所述服务器;所述用于启动多机同屏的操作指令包括,从所述服务器连接的多个云真机中选择至少两个云真机来参与测试的指令;
所述服务器,还用于根据所述第二测试指令得到所述web客户端选择的至少两个云真机,获取所述至少两个云真机的屏幕图像,并发送给所述web客户端;
所述web客户端,还用于接收所述至少两个云真机的屏幕图像,通过网页同时显示所述至少两个云真机的屏幕图像。
在其中一个实施例中,所述web客户端,具体用于通过网页以分屏方式同时显示所述至少两个云真机的屏幕图像;或者,通过网页以叠加方式同时显示所述至少两个云真机的屏幕图像。
在其中一个实施例中,还包括接入终端,所述接入终端与所述服务器连接,所述服务器通过所述接入终端与多个云真机通信连接。
在其中一个实施例中,所述服务器,具体用于将所述第一测试指令/所述第二测试指令发送给所述接入终端,由所述接入终端转发给所述目标云真机;以及,通过所述接入终端获取所述目标云真机的所述屏幕图像/所述新的屏幕图像。
在其中一个实施例中,所述web客户端,还用于获取所述web客户端与所述服务器当前的网络质量,根据该网络质量调整通过网页显示的所述至少两个云真机的屏幕图像的画质。
在其中一个实施例中,所述web客户端,还用于若接收到针对所述至少两个云真机中的至少一个云真机的用于调整画质的操作指令,根据所述调整指令调整通过网页显示的所述至少两个云真机中的至少一个云真机的屏幕图像的画质。
在其中一个实施例中,所述web客户端,还用于若接收到用于设置主从设备的操作指令,根据该操作指令从所述至少两个云真机中确定一个主设备,将其他云真机确定为从设备,向所述服务器发送所述主设备以及所述从设备的信息;
所述服务器,还用于若所述第一测试指令为针对所述主设备的指令,根据所述第一测试指令控制所述主设备和所述从设备中的所述设定软件均执行所述第一测试指令;以及获取所述主设备和所述从设备中所述设定软件执行所述第一测试指令之后的屏幕图像,并发送给所述web客户端;
所述web客户端,还用于根据所述主设备和所述从设备中所述设定软件执行所述第一测试指令之后的屏幕图像,更新所述网页中显示的所述主设备和所述从设备的屏幕图像。
在其中一个实施例中,还包括App客户端;所述APP客户端与所述服务器通信连接;
所述App客户端,用于接收用于启动单机测试的操作指令,作为第三测试指令;将所述第三测试指令发送给所述服务器;所述用于启动单机测试的操作指令包括,从所述服务器连接的多个云真机中选择一个云真机来参与测试的指令;
所述服务器,还用于根据所述第三测试指令得到所述App客户端选择的所述一个云真机,获取所述一个云真机的屏幕图像,分别向所述App客户端以及所述web客户端发送所述屏幕图像;
所述App客户端,还用于接收所述一个云真机的所述屏幕图像,通过其UI界面显示所述一个云真机的所述屏幕图像;
所述web客户端,还用于接收所述一个云真机的所述屏幕图像,通过网页显示所述一个云真机的所述屏幕图像。
在其中一个实施例中,所述App客户端,还用于接收针对所述一个云真机的操作指令,作为第四测试指令,将所述第四测试指令发送给所述服务器;
所述服务器用于根据所述第四测试指令,控制所述一个云真机执行所述四测试指令;以及获取所述一个云真机执行所述第四测试指令之后的屏幕图像,作为新的屏幕图像,分别发送给所述App客户端以及所述web客户端;
所述App客户端,还用于根据所述一个云真机的所述新的屏幕图像,更新其UI界面显示的所述一个云真机的屏幕图像;
所述web客户端,还用于根据所述一个云真机的所述新的屏幕图像,更新通过网页显示的所述一个云真机的屏幕图像。
另一方面,本发明实施例提供一种基于云真机的测试方法,包括:
通过网页显示至少两个云真机的屏幕图像;
接收针对目标云真机中设定软件的操作指令,作为第一测试指令;所述目标云真机为所述至少两个云真机中的云真机;
将所述第一测试指令发送给对应的服务器;所述第一测试指令用于触发所述服务器控制所述目标云真机执行所述一测试指令,并获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像;
接收所述服务器发送的所述新的屏幕图像,根据所述新的屏幕图像,更新所述网页中所述目标云真机的屏幕图像。
上述技术方案中的一个技术方案具有如下优点或有益效果:通过web客户端以网页方式同时显示至少两个云真机的屏幕图像,获取针对目标云真机中设定软件的操作指令并发送给所述服务器;所述目标云真机为所述至少两个云真机中的云真机;服务器将接收到的所述第一测试指令发送给所述目标云真机,并获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,发送给所述web客户端;web客户端更新网页中显示的所述目标云真机的屏幕图像。有利于对多个云真机的测试结果进行比对,同时也有利于提高测试效率。
进一步地,通过web客户端和App客户端的结合,还克服了现有远程测试环境单一,只能通过测试网页对进行云端的远程控制的问题,并且服务器向web客户端、App客户端分别发送远程云真机的屏幕图像,使得测试人员对测试效果的监控更为全面。
附图说明
图1为一个实施例中基于云真机的测试***的结构图;
图2为一实施例的web客户端的启动多机同屏测试模式的界面示意图;
图3为一实施例的web客户端的多机同屏的测试效果的界面示意图;
图4为另一个实施例中基于云真机的测试***的结构图;
图5为一个实施例中基于云真机的测试方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
图1为一个实施例中基于云真机的测试***的结构图,如图1所示,该基于云真机的测试***包括:web客户端以及服务器,所述web客户端与所述服务器通信连接;所述服务器还用于连接多个云真机。
其中,web客户端包括通过网页与服务器实现交互的客户端,例如电脑中的浏览器,用户基于web客户端的操作可以是常规的网页操作,例如通过鼠标、键盘等输入设备实现的网页操作。服务器可以通过独立的服务器实现,也可以通过多个服务器组成的服务器集群来实现。
其中,云真机指的是用于测试的远程终端设备,例如待测试对象是一款应用软件,测试目标是检测该应用软件在不同厂商、不同型号的智能终端中的运行情况,在这种情况下,服务器连接的多个云真机可以是位于不同地理位置的多个不同厂商、不同型号的智能终端。
基于上述的基于云真机的测试***结构,***中各部分在实现远程测试功能时所起的作用包括:
web客户端,可以通过网页同时显示至少两个云真机的屏幕图像,并且获取针对目标云真机中设定软件的操作指令,作为第一测试指令,将所述第一测试指令发送给所述服务器;所述目标云真机为所述至少两个云真机中的云真机;所述设定软件可以为需要测试的应用软件。
服务器,用于根据所述第一测试指令控制所述目标云真机中所述设定软件执行所述第一测试指令;以及获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像,将所述新的屏幕图像发送给所述web客户端;
web客户端,用于根据所述新的屏幕图像,更新所述网页中显示的所述目标云真机的屏幕图像。
进一步地,在其他一些实施例中,为了在web客户端通过网页同时显示至少两个云真机的初始屏幕图像。因此,web客户端,还用于接收用于启动多机同屏的操作指令,作为第二测试指令,将所述第二测试指令发送给所述服务器;所述用于启动多机同屏的操作指令包括,从所述服务器连接的多个云真机中选择至少两个云真机来参与测试的指令;服务器,还用于根据所述第二测试指令得到所述web客户端选择的至少两个云真机,获取所述至少两个云真机的屏幕图像,并发送给所述web客户端;web客户端,还用于接收所述至少两个云真机的屏幕图像,通过网页同时显示所述至少两个云真机的屏幕图像。
用户通过web客户端选定多个云真机参与测试时,首次接收到的所述多个云真机的屏幕图像,可以是多个云真机的***主页屏幕图像。
根据本发明一个实施例中,还包括通过web客户端控制多个云真机安装设定软件的步骤,具体地,所述web客户端还可以接收用于在目标云真机安装所述设定软件的操作指令,作为安装操作指令,将该安装操作指令发送给所述服务器。服务器还可以根据该安装操作指令,控制所述目标云真机中安装所述设定软件;以及获取所述目标云真机安装所述设定软件之后的屏幕图像,发送给web客户端。web客户端还可以根据所述目标云真机安装所述设定软件之后的屏幕图像,更新通过网页中显示的所述目标云真机的屏幕图像。
本发明实施例中,web客户端设置有单机测试和多机同屏两种测试模式,当启动单机测试的模式时,web客户端通过网页显示被选择的一个云真机的屏幕图像;当启动多机同屏测试模式时,web客户端通过网页可以同时显示被选择的多个云真机的屏幕图像。可参考图2所示,web客户端的界面中包含单机测试的功能按钮以及多机同屏的功能按钮,通过点击相应的功能按钮,进入对应的测试模式。
在一些实施例中,web客户端可以通过网页,以分屏方式同时显示所述至少两个云真机的屏幕图像,继续参考图3所示,以分屏方式同时显示3个云真机的屏幕图像。用户可以同屏观察多个云真机的屏幕图像,无需切换,有利于提高测试效果。
在其他一些实施例中,web客户端也通过网页以叠加方式同时显示所述至少两个云真机的屏幕图像,在此显示方式下,用户可通过鼠标或者键盘切换显示在最上层的云真机的屏幕图像。
通过上述的基于云真机的测试***结构,用户通过web客户端提供的多机同屏测试,可以同屏显示多个云真机的测试结果图像,方便测试人员进行对比,有利于提高测试效率。
进一步地,参考图4所示,在上述的基于云真机的测试***的基础上,还可以同时包括App客户端,所述App客户端也与所述服务器通信连接。本发明实施例中的App客户端可以是安装在智能终端中的应用程序,所述智能终端包括智能手机、平板、便携式可穿戴设备等,例如预先安装在安卓手机中的App,用户基于App客户端的操作可以是常规的智能终端操作,例如滑动、触摸点击等手势操作。
其中,App客户端可以接收针对某一个云真机的操作指令并发送给所述服务器,服务器根据App客户端发送的测试指令,控制云真机执行相应的测试指令;以及获取该云真机执行相应测试指令之后的屏幕图像,服务器可以将所述屏幕图像分别发送给App客户端以及web客户;由此用户可以同时通过App客户端以及web客户观察云真机的测试结果。具体实现方式例如:
App客户端接收用于启动单机测试的操作指令,作为第三测试指令;将所述第三测试指令发送给服务器;用于启动单机测试的操作指令包括,从所述服务器连接的多个云真机中选择一个云真机来参与测试的指令。
服务器根据所述第三测试指令得到App客户端选择的一个云真机,获取所述一个云真机的屏幕图像,分别向App客户端和web客户端发送所述屏幕图像。
App客户端接收所述一个云真机的所述屏幕图像,通过其UI界面显示所述一个云真机的所述屏幕图像。
web客户端,接收所述一个云真机的所述屏幕图像,通过网页显示所述一个云真机的所述屏幕图像。
进一步地,在App客户端显示出选定云真机的初始屏幕图像之后,用户基于该云真机的屏幕图像可执行软件测试操作,具体地:
App客户端通过其UI界面显示所述一个云真机的所述屏幕图像之后,还可以接收针对所述一个云真机的操作指令,作为第四测试指令,将所述第四测试指令发送给所述服务器。
服务器根据所述第四测试指令,控制所述一个云真机执行所述四测试指令;以及获取所述一个云真机执行所述第四测试指令之后的屏幕图像,作为新的屏幕图像,分别发送给所述App客户端以及所述web客户端。
App客户端根据所述一个云真机的所述新的屏幕图像,更新其UI界面显示的所述一个云真机的屏幕图像;web客户端根据所述一个云真机的所述新的屏幕图像,更新通过网页显示的所述一个云真机的屏幕图像。
需要说明的是,当web客户端在单机测试的模式下,发出选定云真机的测试指令,由此实现在web客户端和App客户端显示同一个云真机的初始屏幕图像,进一步地,在通过web客户端和App客户端显示同一个云真机的初始屏幕图像的状态下,用户也可以通过web客户端执行相应的测试操作,并件测试操作的结果同步反馈到web客户端和App客户端。通过web客户端和App客户端同步显示相同的云真机的屏幕图像,有利于多个测试人员对测试结果的观察。
其中,App客户端通过其UI界面显示云真机的屏幕图像;web客户端通过网页显示目标云真机的屏幕图像。在web客户端设置有单机测试和多机同屏两种测试模式(参见上述所述),在App客户端不包含多机同屏的测试模式。当用户通过App客户端和web客户端均登陆了服务器的情况下,将web客户端切换为单机测试的模式,无论用户通过App客户端还是web客户端执行了测试操作,web客户端与App客户端显示的云真机的屏幕图像均相同。
需要说明的是,用户在App客户端或者web客户端执行的测试操作,可以是任何常规的真机上的操作,例如安装软件、卸载软件、更改主题等操作。通过web客户端和/或App客户端显示云真机的屏幕图像之后,用户可以像正常真机上的软件操作一样,通过web客户端和/或App客户端操作待测软件。
图2为一实施例的App客户端的远程测试界面的示意图,其中待测试对象是一款应用软件,由图2可知,与服务器连接的多个云真机是多个不同厂商、不同型号的智能手机。在该服务器端记录了已经连接的多个云真机的设备信息,用户可以通过web客户端登陆该服务器,查看该服务器端连接的多个云真机的设备信息。
进一步地,用户通过web客户端选择多机同屏模式,并选择多个云真机参与测试,服务器返回所选的多个云真机的初始屏幕图像,通过web客户端显示多个云真机的初始屏幕图像,如图3所示。然后用户通过web客户端的操作,可模拟在所选的多个云真机中进行应用软件的安装或者卸载等测试操作,web客户端向服务器发送对应的测试指令,服务器远程控制相应的多个云真机安装或者卸载该应用软件;web客户端进一步显示多个云真机安装或者卸载该应用软件之后的屏幕图像。
在web客户端显示多个云真机安装该应用软件之后的屏幕图像之后,用户还可通过web客户端进行其他操作,以模拟在所选的多个云真机中使用该应用软件的操作,web客户端向服务器发送对应的测试指令,服务器远程控制相应的多个云真机中该应用软件执行同样的操作,并返回执行相应操作后的界面图像给web客户端,web客户端进一步显示多个云真机执行相应测试指令之后的屏幕图像。
进一步地,用户通过web客户端还可以设置一个主设备和若干个从设备,用户通过web客户端对主设备中的设定软件进行测试操作,不仅可以控制远程的主设备云真机执行相应的指令,还可同时控制远程的从设备对应的云真机中的设定软件也执行相应的指令,实现多机同屏联动的效果。
根据本发明一个实施例,具体地,所述web客户端若接收到用于设置主从设备的操作指令,根据该操作指令从所述至少两个云真机中确定一个主设备,将其他云真机确定为从设备,向所述服务器发送所述主设备以及所述从设备的信息。其中,web客户端可设置相应的操作控件/操作选项,用于接收到设置主从设备的操作指令,相关的操作控件/操作选项的位置可根据实际情况布局。
相应地,所述服务器在收到第一测试指令(即对某个云真机中设定软件的操作指令)之后,若所述第一测试指令为针对所述主设备的指令,根据所述第一测试指令控制所述主设备和所述从设备中的所述设定软件均执行所述第一测试指令;以及获取所述主设备和所述从设备中所述设定软件执行所述第一测试指令之后的屏幕图像,并发送给所述web客户端。
相应地,web客户端可根据主设备和从设备中设定软件执行所述第一测试指令之后的屏幕图像,更新所述网页中显示的所述主设备和所述从设备的屏幕图像。
通过上述实施例,用户通过web客户端的多机同屏测试模式,可批量控制多个云真机同时进行测试,即同屏联动;也可以针对某一个云真机进行测试。换言之,当批量测试云真机时,图3所示中所示的3个云真机中的至少2个的屏幕图像会同时发生变化,当针对某一个控制云真机时,图3所示中所示的3个云真机的屏幕图像中,仅一个发生变化。
基于上述web客户端的测试操作,可以测试该应用软件在多个远程云真机中运行是否正常,实现该应用软件的远程真机测试。
通过上述的基于云真机的测试***结构,用户不仅可以通过web客户端查看该服务器端连接的多个云真机的设备信息,并在本地显示所选云真机的屏幕图像,基于该屏幕图像进行应用软件的远程测试操作;还可以通过App客户端查看该服务器端连接的多个云真机的设备信息,以及在手机等智能终端显示所选云真机的屏幕图像,进而基于该屏幕图像以及手机等智能终端的屏幕操作,实现对应用软件在选定云真机的测试操作;因此能够克服了现有测试环境单一,只能通过测试网页对进行云端的远程控制的问题,并且通过APP端的手势操作,还有利于提高应用软件的测试时间和效率;并且因为服务器分别向web客户端、App客户端分别发送远程云真机的屏幕图像,还可以使得测试人员对测试效果的监控更为全面;此外,通过web客户端的多机同屏测试,进一步提高了测试效率。
图4为另一个实施例中基于云真机的测试***的结构图,在该基于云真机的测试***中,在上述的***结构基础上,还包括与服务器连接的接入终端,所述服务器通过所述接入终端与多个云真机通信连接。
根据本发明一实施例,基于图4所示的基于云真机的测试***,服务器还可以用于,将测试指令发送给所述接入终端,由所述接入终端转发给对应的云真机;以及,通过所述接入终端获取对应云真机的屏幕图像。
通过接入终端实现服务器与多个云真机的通信连接和数据转发,有利于***扩展,例如增加或者更换需要与服务器连接云真机,此外,还可以保证不同类型的云真机与服务器之间的兼容性。
上述实施例中的App客户端,可以为适用于安卓终端的客户端。需要说明的是,该App客户端的安装与安卓终端的其他应用程序类似,因此能够兼容基于安卓***各种智能终端,例如安卓手机或者安卓平板等智能终端。
根据本发明一实施例,服务器和所述App客户端之间的连接为双全工websocket通信连接。例如,App客户端可以通过OkHttpClient与服务器建立双全工websocket通信连接,通过该websocket通信连接,App客户端可以有效接收服务器发送的目标云真机的屏幕图像的数据。具体接收过程可以如下:所述App客户端通过继承socketListener的ImageListener类来监听websocket传来的字节流,以此接收所述服务器发送的字节流,所述字节流为屏幕图像对应的字节流。此外,App客户端可以每接收一个字节流就将其转换成Bitmap位图,通过ImageView对所述Bitmap位图进行显示,由此实现接收服务器发送的云真机的屏幕图像,并通过App客户端的UI界面显示出来。
通过上述的通信连接已经图像收发方式,可以保证通过云真机进行软件测试时的测试效率,避免出现测试卡顿的现象。
在一个场景中,用户通过智能手机中安装的App客户端,对待测应用软件进行测试时,该App客户端通过发送测试指令给服务器,进而控制远端的手机(即与服务器连接的云真机),实现过程中,App客户端利用消息队列,向服务器发送事件消息,服务器收到对应的消息,会调用相应的方法去操作相应的远程真机。
另一方面,web客户端远程测试操作也可以利用消息队列实现,web客户端向服务器发送事件消息,服务器收到对应的消息,会调用相应的方法去操作远程真机,具体过程可以包括:
1)web客户端接收服务器发送的多个手机传输的屏幕图像,经过画质调整后,同时显示在web客户端;
2)web客户端监听用户在web客户端上的各种鼠标操作事件;
3)初始化消息队列;
4)取相应的多个手机的channel,创建连接;
5)解析鼠标操作事件并转化成响应的测试指令;
6)将测试指令传输到服务器,通过服务器将测试指令发至对应的多个远端手机,接收远端手机返回的屏幕图像,实现待测软件在该远端手机中的测试。
根据本发明一实施例,web客户端还可以实时获取所述web客户端与所述服务器当前的网络质量,根据该网络质量调整通过网页显示的所述至少两个云真机的屏幕图像的画质。通过本实施例,可以基于web客户端与服务器当前的网络质量,自适应地批量调整多个云真机的屏幕图像的画质。
根据本发明另一实施例,web客户端若接收到针对所述至少两个云真机中的至少一个云真机的用于调整画质的操作指令,还可以根据所述调整指令调整通过网页显示的所述至少两个云真机中的至少一个云真机的屏幕图像的画质。通过本实施例,用户可以有选择地,调整web客户端显示的部分云真机中的屏幕图像的画质。
例如可以在高清、标清、流畅的三种画质之间自适应切换,来达到不同智能终端上友好显示的效果。其中,调整图片和压缩比实验对比数据如表1,表2。
表1图片压缩比与图片尺寸
表2帧率与图片压缩比产生的实际流量
帧率 | 图片压缩比 | 实际流量 |
60 | 100% | 4.02M/S |
60 | 80% | 2.74M/S |
60 | 50% | 2.41M/S |
30 | 80% | 1.43M/S |
30 | 50% | 1.22M/S |
30 | 20% | 1.10M/S |
15 | 50% | 0.63M/S |
15 | 20% | 0.55M/S |
15 | 10% | 0.52M/S |
同理,App客户端也可以获取所述App客户端与所述服务器当前的网络质量,根据该网络质量调整通过所述UI界面显示的屏幕图像的画质。或者根据画质调整指令,调整通过所述UI界面显示的所述屏幕图像的画质。
上述实施例的远程测试的方法带来的有益效果包括:增加了测试场景(web端和App端的融合使用),可以让测试人员随时随地的进行应用软件的真机测试,提供更好的用户体验,降低了测试的成本,提高了测试效率;另外还可以同时对多个云真机的测试结果进行对此显示,提高测试效果。
图5为一实施例中基于云真机的测试方法的流程图,以该方法应用于上述的web客户端为例进行说明,包括以下步骤:
S401,通过网页显示至少两个云真机的屏幕图像;
S402,接收针对目标云真机中设定软件的操作指令,作为第一测试指令;所述目标云真机为所述至少两个云真机中的云真机;
S403,将所述第一测试指令发送给对应的服务器;所述第一测试指令用于触发所述服务器控制所述目标云真机执行所述一测试指令,并获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像;
S404,接收所述服务器发送的所述新的屏幕图像,根据所述新的屏幕图像,更新所述网页中所述目标云真机的屏幕图像。
进一步地,根据本发明一实施例,在步骤S401,web客户端通过网页同时显示至少两个云真机的屏幕图像之前,还包括步骤:
web客户端接收用于启动多机同屏的操作指令,作为第二测试指令,将所述第二测试指令发送给所述服务器;所述用于启动多机同屏的操作指令包括,从所述服务器连接的多个云真机中选择至少两个云真机来参与测试的指令
服务器根据所述第二测试指令,得到所述web客户端选择的至少两个云真机,获取所述至少两个云真机的屏幕图像,并发送给web客户端。
web客户端接收所述至少两个云真机的屏幕图像,通过网页同时显示所述至少两个云真机的屏幕图像。
由此用户可像真机操作一样,基于web客户端实现对远程云真机的各种操作,包括软件安装、卸载、运行等操作,并且可以通过同时显示多个云真机的屏幕图像,方便对比测试结果。
应该理解的是,以上各步骤是站在web客户端的角度进行描述的,具体的测试过程和数据传输可参考上述的基于云真机的测试***的实施例中的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
在一个实施例中,提供了一种智能终端,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
通过网页同时显示至少两个云真机的屏幕图像;接收针对目标云真机中设定软件的操作指令,作为第一测试指令;所述目标云真机为所述至少两个云真机中的云真机;将所述第一测试指令发送给对应的服务器;所述第一测试指令用于触发所述服务器控制所述目标云真机执行所述一测试指令,并获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像;接收所述服务器发送的所述新的屏幕图像,根据所述新的屏幕图像,更新所述网页中所述目标云真机的屏幕图像。
应该理解的是,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
本文实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或(模块)单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
在本文中提及的“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二”区分的对象在适当情况下可以互换,以使这里描述的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于云真机的测试***,其特征在于,包括web客户端和服务器,所述web客户端与所述服务器通信连接;所述服务器还用于连接多个云真机;
所述web客户端,用于通过网页显示至少两个云真机的屏幕图像,获取针对目标云真机中设定软件的操作指令,作为第一测试指令,将所述第一测试指令发送给所述服务器;所述目标云真机为所述至少两个云真机中的云真机;
所述服务器,用于根据所述第一测试指令控制所述目标云真机中所述设定软件执行所述第一测试指令;以及获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像,将所述新的屏幕图像发送给所述web客户端;
所述web客户端,用于根据所述新的屏幕图像,更新所述网页中显示的所述目标云真机的屏幕图像。
2.根据权利要求1所述的***,其特征在于,
所述web客户端,还用于接收用于启动多机同屏的操作指令,作为第二测试指令,将所述第二测试指令发送给所述服务器;所述用于启动多机同屏的操作指令包括,从所述服务器连接的多个云真机中选择至少两个云真机来参与测试的指令;
所述服务器,还用于根据所述第二测试指令得到所述web客户端选择的至少两个云真机,获取所述至少两个云真机的屏幕图像,并发送给所述web客户端;
所述web客户端,还用于通过网页同时显示所述至少两个云真机的屏幕图像。
3.根据权利要求2所述的***,其特征在于,所述web客户端,具体用于通过网页以分屏方式同时显示所述至少两个云真机的屏幕图像;或者,通过网页以叠加方式同时显示所述至少两个云真机的屏幕图像。
4.根据权利要求1所述的***,其特征在于,还包括接入终端,所述接入终端与所述服务器连接,所述服务器通过所述接入终端与多个云真机通信连接。
5.根据权利要求4所述的***,其特征在于,
所述服务器,具体用于将所述第一测试指令/所述第二测试指令发送给所述接入终端,由所述接入终端转发给所述目标云真机;以及,通过所述接入终端获取所述目标云真机的所述屏幕图像/所述新的屏幕图像。
6.根据权利要求1至5任一所述的***,其特征在于,
所述web客户端,还用于获取所述web客户端与所述服务器当前的网络质量,根据该网络质量调整通过网页显示的所述至少两个云真机的屏幕图像的画质;
和/或,
所述web客户端,还用于若接收到针对所述至少两个云真机中的至少一个云真机的用于调整画质的操作指令,根据所述调整画质的操作指令,调整通过网页显示的所述至少两个云真机中的至少一个云真机的屏幕图像的画质。
7.根据权利要求1至5任一所述的***,其特征在于,
所述web客户端,还用于若接收到用于设置主从设备的操作指令,根据该操作指令从所述至少两个云真机中确定一个主设备,将其他云真机确定为从设备,向所述服务器发送所述主设备以及所述从设备的信息;
所述服务器,还用于若所述第一测试指令为针对所述主设备的指令,根据所述第一测试指令控制所述主设备和所述从设备中的所述设定软件均执行所述第一测试指令;以及获取所述主设备和所述从设备中所述设定软件执行所述第一测试指令之后的屏幕图像,并发送给所述web客户端;
所述web客户端,还用于根据所述主设备和所述从设备中所述设定软件执行所述第一测试指令之后的屏幕图像,更新所述网页中显示的所述主设备和所述从设备的屏幕图像。
8.根据权利要求1所述的***,其特征在于,还包括App客户端;所述APP客户端与所述服务器通信连接;
所述App客户端,用于接收用于启动单机测试的操作指令,作为第三测试指令;将所述第三测试指令发送给所述服务器;所述用于启动单机测试的操作指令包括,从所述服务器连接的多个云真机中选择一个云真机来参与测试的指令;
所述服务器,还用于根据所述第三测试指令得到所述App客户端选择的所述一个云真机,获取所述一个云真机的屏幕图像,分别向所述App客户端以及所述web客户端发送所述屏幕图像;
所述App客户端,还用于通过其UI界面显示所述一个云真机的所述屏幕图像;
所述web客户端,还用于通过网页显示所述一个云真机的所述屏幕图像。
9.根据权利要求8所述的***,其特征在于,
所述App客户端,还用于接收针对所述一个云真机的操作指令,作为第四测试指令,将所述第四测试指令发送给所述服务器;
所述服务器用于根据所述第四测试指令,控制所述一个云真机执行所述四测试指令;以及获取所述一个云真机执行所述第四测试指令之后的屏幕图像,作为新的屏幕图像,分别发送给所述App客户端以及所述web客户端;
所述App客户端,还用于根据所述新的屏幕图像,更新其UI界面显示的所述一个云真机的屏幕图像;
所述web客户端,还用于根据所述新的屏幕图像,更新通过网页显示的所述一个云真机的屏幕图像。
10.一种基于云真机的测试方法,其特征在于,包括:
通过网页显示至少两个云真机的屏幕图像;
接收针对目标云真机中设定软件的操作指令,作为第一测试指令;所述目标云真机为所述至少两个云真机中的云真机;
将所述第一测试指令发送给对应的服务器;所述第一测试指令用于触发所述服务器控制所述目标云真机执行所述一测试指令,并获取所述目标云真机中所述设定软件执行所述第一测试指令之后的屏幕图像,作为新的屏幕图像;
接收所述服务器发送的所述新的屏幕图像,根据所述新的屏幕图像,更新所述网页中所述目标云真机的屏幕图像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811598078.2A CN109600282A (zh) | 2018-12-26 | 2018-12-26 | 基于云真机的测试***及测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811598078.2A CN109600282A (zh) | 2018-12-26 | 2018-12-26 | 基于云真机的测试***及测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109600282A true CN109600282A (zh) | 2019-04-09 |
Family
ID=65964427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811598078.2A Pending CN109600282A (zh) | 2018-12-26 | 2018-12-26 | 基于云真机的测试***及测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109600282A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677477A (zh) * | 2019-09-27 | 2020-01-10 | 京东数字科技控股有限公司 | 针对电子设备的处理方法、服务器和第二电子设备 |
CN111866160A (zh) * | 2020-07-28 | 2020-10-30 | 网易(杭州)网络有限公司 | 多机控制方法、装置、设备及存储介质 |
CN112825528A (zh) * | 2019-11-21 | 2021-05-21 | Oppo广东移动通信有限公司 | 信息推送方法及相关设备 |
CN113138919A (zh) * | 2021-04-19 | 2021-07-20 | 广州掌动智能科技有限公司 | 多客户端测试***和方法 |
CN113656289A (zh) * | 2021-07-30 | 2021-11-16 | 厦门雅基软件有限公司 | 测试方法、装置、电子设备及计算机可读存储介质 |
CN114064447A (zh) * | 2020-08-05 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 界面测试方法、装置、存储介质及终端 |
CN114244741A (zh) * | 2021-12-16 | 2022-03-25 | 阿波罗智联(北京)科技有限公司 | 一种链路测试方法、装置、***、电子设备及存储介质 |
CN114466401A (zh) * | 2022-03-02 | 2022-05-10 | 北京新氧科技有限公司 | 图像传输方法和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130054792A1 (en) * | 2011-08-25 | 2013-02-28 | Salesforce.Com, Inc. | Cloud-based performance testing of functionality of an application prior to completion of development |
CN105975367A (zh) * | 2016-04-29 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 移动设备的测试方法和装置 |
CN105988688A (zh) * | 2016-01-22 | 2016-10-05 | 腾讯科技(深圳)有限公司 | 一种截图的方法及装置 |
CN108307021A (zh) * | 2018-01-18 | 2018-07-20 | 中国工商银行股份有限公司 | 移动终端的并行跟随测试设备、云真机及方法 |
CN108804302A (zh) * | 2017-05-04 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 一种远程测试方法、***及相关设备 |
CN108833963A (zh) * | 2018-05-31 | 2018-11-16 | 腾讯科技(上海)有限公司 | 显示界面画面的方法、计算机设备、可读存储介质和*** |
-
2018
- 2018-12-26 CN CN201811598078.2A patent/CN109600282A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130054792A1 (en) * | 2011-08-25 | 2013-02-28 | Salesforce.Com, Inc. | Cloud-based performance testing of functionality of an application prior to completion of development |
CN105988688A (zh) * | 2016-01-22 | 2016-10-05 | 腾讯科技(深圳)有限公司 | 一种截图的方法及装置 |
CN105975367A (zh) * | 2016-04-29 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 移动设备的测试方法和装置 |
CN108804302A (zh) * | 2017-05-04 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 一种远程测试方法、***及相关设备 |
CN108307021A (zh) * | 2018-01-18 | 2018-07-20 | 中国工商银行股份有限公司 | 移动终端的并行跟随测试设备、云真机及方法 |
CN108833963A (zh) * | 2018-05-31 | 2018-11-16 | 腾讯科技(上海)有限公司 | 显示界面画面的方法、计算机设备、可读存储介质和*** |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110677477A (zh) * | 2019-09-27 | 2020-01-10 | 京东数字科技控股有限公司 | 针对电子设备的处理方法、服务器和第二电子设备 |
CN112825528B (zh) * | 2019-11-21 | 2022-11-01 | Oppo广东移动通信有限公司 | 信息推送方法及相关设备 |
CN112825528A (zh) * | 2019-11-21 | 2021-05-21 | Oppo广东移动通信有限公司 | 信息推送方法及相关设备 |
CN111866160A (zh) * | 2020-07-28 | 2020-10-30 | 网易(杭州)网络有限公司 | 多机控制方法、装置、设备及存储介质 |
CN111866160B (zh) * | 2020-07-28 | 2023-09-15 | 网易(杭州)网络有限公司 | 多机控制方法、装置、设备及存储介质 |
CN114064447B (zh) * | 2020-08-05 | 2024-05-31 | 腾讯科技(深圳)有限公司 | 界面测试方法、装置、存储介质及终端 |
CN114064447A (zh) * | 2020-08-05 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 界面测试方法、装置、存储介质及终端 |
CN113138919A (zh) * | 2021-04-19 | 2021-07-20 | 广州掌动智能科技有限公司 | 多客户端测试***和方法 |
CN113138919B (zh) * | 2021-04-19 | 2022-04-22 | 广州掌动智能科技有限公司 | 多客户端测试***和方法 |
CN113656289A (zh) * | 2021-07-30 | 2021-11-16 | 厦门雅基软件有限公司 | 测试方法、装置、电子设备及计算机可读存储介质 |
CN114244741A (zh) * | 2021-12-16 | 2022-03-25 | 阿波罗智联(北京)科技有限公司 | 一种链路测试方法、装置、***、电子设备及存储介质 |
CN114244741B (zh) * | 2021-12-16 | 2023-11-14 | 阿波罗智联(北京)科技有限公司 | 一种链路测试方法、装置、***、电子设备及存储介质 |
CN114466401A (zh) * | 2022-03-02 | 2022-05-10 | 北京新氧科技有限公司 | 图像传输方法和电子设备 |
CN114466401B (zh) * | 2022-03-02 | 2024-03-22 | 北京新氧科技有限公司 | 图像传输方法和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109600282A (zh) | 基于云真机的测试***及测试方法 | |
CN109684218A (zh) | 基于云真机的测试***及测试方法 | |
CN108804302B (zh) | 一种远程测试方法、***及相关设备 | |
US8627217B2 (en) | Window display system, window display method, program development support device, and server device | |
CN103984626B (zh) | 一种生成测试用例脚本的方法及装置 | |
CN110687809B (zh) | 选取主控设备的方法、装置及设备联动*** | |
CN104834595A (zh) | 一种可视化自动测试方法及*** | |
CN106354546B (zh) | 虚拟机远程控制方法和*** | |
CN110309051A (zh) | 管理测试用例的方法、***、设备及存储介质 | |
CN109669714A (zh) | 固件升级方法、装置及计算机可读存储介质 | |
CN102077553B (zh) | 用于提供背景触发的背景模型分发的方法、设备和计算机程序产品 | |
CN104092579B (zh) | 网络类型的模拟方法及装置 | |
CN110489312A (zh) | 用于控件触发数据采集的数据关联方法和装置 | |
CN105512343A (zh) | 网络异常模拟、数据库故障自动切换的测试方法和装置 | |
CN103870289A (zh) | 一种显示模式的调整方法及电子设备 | |
CN109213564A (zh) | 智能家居控制界面调整方法、装置、智能终端和介质 | |
CN111694550B (zh) | 一种页面显示控制方法、装置及*** | |
CN109471647A (zh) | 一种数据的更新方法、装置、电子设备及可读介质 | |
CN109194535A (zh) | 一种终端测试***及方法 | |
JP5632553B1 (ja) | 表示データ生成装置及びプログラム | |
CN107102937B (zh) | 一种用户界面测试方法和装置 | |
CN114416578A (zh) | 测试方法和装置 | |
CN115129574A (zh) | 一种代码测试方法和装置 | |
CN110879676A (zh) | 调试控制方法、主控设备、调试服务器、被控设备及*** | |
CN108920645A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220121 Address after: Room 1423, No. 1256 and 1258, Wanrong Road, Jing'an District, Shanghai 200040 Applicant after: Tianyi Digital Life Technology Co.,Ltd. Address before: 1 / F and 2 / F, East Garden, Huatian International Plaza, 211 Longkou Middle Road, Tianhe District, Guangzhou, Guangdong 510630 Applicant before: Century Dragon Information Network Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190409 |
|
RJ01 | Rejection of invention patent application after publication |