CN114741273A - 一种远程真实移动终端测试方法、装置、存储介质及设备 - Google Patents
一种远程真实移动终端测试方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN114741273A CN114741273A CN202110020358.0A CN202110020358A CN114741273A CN 114741273 A CN114741273 A CN 114741273A CN 202110020358 A CN202110020358 A CN 202110020358A CN 114741273 A CN114741273 A CN 114741273A
- Authority
- CN
- China
- Prior art keywords
- test
- mobile terminal
- execution machine
- real mobile
- communication address
- 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
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
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Abstract
本申请公开了一种远程真实移动终端测试方法、装置、存储介质及设备,上述方法包括获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;将所述测试命令传输至所述真实移动终端;获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。本申请可以在远程场景中为本地提供真实移动终端的测试环境。
Description
技术领域
本申请涉及测试领域,尤其涉及一种远程真实移动终端测试方法、装置、存储介质及设备。
背景技术
为了提高终端中应用程序的质量,需要对终端中应用程序进行精准测试,以测试出终端中应用程序的相关问题和漏洞。相关技术中终端中应用程序的测试对于测试人员的手动操作依赖性较高,而自动测试系统的出现提升了测试的自动化程度。
自动测试系统虽然可以在本地对于真实移动终端进行自动化测试,但是在远程测试场景中,通常只能够通过终端模拟器来模拟真实移动终端,并通过对终端模拟器进行自动化测试来模拟真实移动终端的测试过程,而终端模拟器始终无法完全模拟真实移动终端,终端模拟器本身存在的缺陷也降低了测试通过率,增加了测试缺陷排查难度。
发明内容
为了提升远程场景中自动化测试的稳定性,降低测试失败率并且便于分析测试失败的原因,本申请实施例提供一种远程真实移动终端测试方法、装置、存储介质及设备。
一方面,本申请提供了一种远程真实移动终端测试方法,所述方法包括:
获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;
根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;
获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;
将所述测试命令传输至所述真实移动终端;
获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
另一方面,本申请提供一种远程真实移动终端测试装置,所述装置包括:
通信地址获取模块,用于获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;
通信配置模块,用于根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;
监听模块,用于获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;
命令传输模块,用于将所述测试命令传输至所述真实移动终端;
测试结果反馈模块,用于获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
另一方面,本申请提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现上述的一种远程真实移动终端测试方法。
另一方面,本申请提供了一种远程真实移动终端测试设备,其特征在于,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现上述的一种远程真实移动终端测试方法。
本申请提供了一种远程真实移动终端测试方法、装置、存储介质及设备。本申请以本地监听执行机作为中转,在本地即可构建真实移动终端的测试环境,通过与远程的自动化测试平台以及测试执行机通信,可以实现对本地真实移动终端的测试,显著提升测试成功率,降低对所测试软件在运行过程中存在的缺陷的排查难度,并且本地监听执行机配置成功后可以一直为真实移动终端提供测试环境,为测试提供很大便利,从而显著提升测试效率。进一步地,本申请中提供的远程真实移动终端测试方法通过对真实移动终端进行测试,还可以将终端模拟器无法检测到的用户接口兼容性缺陷检测出来。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案和优点,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请提供的远程场景中基于QTA的自动化测试的一种示意图;
图2是本申请提供的一种远程真实移动终端测试方法的一种可行的实施框架示意图;
图3是本申请实施例提供的一种远程真实移动终端测试方法的流程示意图;
图4是本申请提供的根据所述第一通信地址和所述第二通信地址配置本地监听执行机的流程示意图;
图5是本申请提供的在所述本地监听执行机中配置虚拟控制台服务器的流程示意图;
图6是本申请提供的虚拟控制台服务器通信配置示意图;
图7是本申请提供的虚拟控制台服务器加密配置示意图;
图8是本申请提供的配置VNC连接测试机,基于所述VNC连接测试机测试所述虚拟控制台服务器是否有效的流程示意图;
图9是本申请提供的虚拟控制台远程桌面显示出授权界面的示意图;
图10是本申请提供的对防火墙进行第一配置,以使得所述防火墙允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信的流程示意图;
图11是本申请提供的对防火墙进行第二配置,以使得基于调试命令端口号传输的数据被允许通过所述防火墙的流程示意图;
图12是本申请提供的防火墙入站规则配置示意图;
图13是本申请提供的防火墙入站规则确认生效示意图;
图14是本申请提供的start.bat文件运行效果示意图;
图15是本申请提供的真实移动终端测试效果示意图;
图16是本申请提供的一种远程真实移动终端测试方法实施示意图;
图17是本申请提供的一种远程真实移动终端测试方法实施过程示意图;
图18是本申请提供的一种远程真实移动终端测试装置框图;
图19是本申请提供的一种用于实现本申请实施例所提供的方法的设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了使本申请实施例公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请实施例,并不用于限定本申请实施例。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。为了便于理解本申请实施例上述的技术方案及其产生的技术效果,本申请实施例首先对于相关专业名词进行解释:
自动化测试平台(Quick Test for Android,QTA):提供面向Android应用的测试自动化解决方案,适用于后台、原生或混合型客户端应用的测试。它支持Android、iOS、Web、后台、云服务和Windows端的UI自动化测试,是使用最为广泛的自动化测试框架之一。QTA是一套完整的测试自动化解决方案,包括从用例编写,用例组织,用例分布式执行等功能。QT4A,即Quick Test for Android,是基于QTA提供的面向Android应用的UI测试自动化解决方案。其具有轻松易用、引擎强大(支持AndroidNative控件、Web控件和自定义控件)、高效维护等特点。比如,采用QT4A测试时,只需Root手机,无需产品源代码和编译,使用发布版本即可进行测试。又比如,QT4A测试,可以基于QPath技术和QTA UI框架,降低产品变化的脚本维护投入,等等。
虚拟网络控制台(Virtual Network Console,VNC):远程控制工具软件,是在基于UNIX和Linux操作系统的免费的开源软件,远程控制能力强大,高效实用。
版本控制系统(Subversion,SVN):一个开放源代码的,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
安卓调试桥(Android Debug Bridge,ADB):可以用于通过电脑端与模拟器或者真实设备交互。
模拟器:模拟真实移动终端的软件。以安卓模拟器为例,其通过正常安装后即可以在电脑屏幕上呈现出移动终端操作系统的界面,借助于应用商店、手机助手即可在所述模拟器完成应用程序的安装,进而在电脑上运行原本运行于真实移动终端的各种应用程序,目前安卓模拟器的CPU架构有X86和ARM两种类型。
相关技术中,可以使用自动化测试工具进行终端自动化测试,以QTA为例,QTA可以支持本地真实移动终端的自动化测试,也可以支持远程终端模拟器的自动化测试。如图1所示,其示出了远程场景中基于QTA的自动化测试的一种示意图。由QTA控制的测试执行机中运行有测试脚本,通过QTA将所述测试脚本中的动作转化为用于测试终端的机器指令,将所述机器指令以ADB命令的形式发送至终端模拟器中,由所述终端模拟器执行所述ADB命令,并向所述测试执行机反馈测试结果。由于测试执行机只能够对于直接与所述测试执行机进行物理连接的真实移动终端进行自动化测试,比如,可以将真实移动终端插入所述测试执行机进行自动化测试;而在远程场景中,被测试的真实移动终端无法直接插入所述测试执行机,因此只能够通过终端模拟器来模拟真实移动终端,基于终端模拟器与测试执行机的通信对所述终端模拟器进行自动测试。
然而,终端模拟器毕竟不是真实的移动终端,终端模拟器的软硬件条件与真实的移动终端有所区别,因此,远程场景中使用终端模拟器模拟真实移动终端的适用条件也有限。以直播业务和电竞业务为例,对于直播业务和电竞业务中的部分业务,目前的终端模拟器无法支持其运行,因此,也无法通过终端模拟器对于这部分业务进行测试。
并且,终端模拟器自身的稳定性不高,也会降低远程场景中使用终端模拟器模拟真实移动终端进行自动化测试的稳定性,导致测试失败率增加。比如模拟器经常会有存储空间满的问题以及网络异常的问题,这都会导致自动化测试用例大批量失败,甚至无法启动自动化测试进程;部分自动化测试用例需要解决弹窗问题,而在终端模拟机上运行该自动化测试用例时,可能会出现系统弹窗而导致用例失败。
进一步地,终端模拟器本身的缺陷也可能造成测试失败原因难以定位,测试人员需要分析是由于终端模拟器本身的原因导致的测试失败,还是由于被测试的功能的实现过程的缺陷而导致的测试失败。
为了提升远程场景中自动化测试的稳定性,降低测试失败率并且便于分析测试失败的原因,本申请提供了一种远程真实移动终端测试方法,通过在远程场景中实现真实移动终端的测试,不再使用终端模拟器模拟真实的移动终端,从而规避由于终端模拟器的原因而导致的测试异常,还可以将终端模拟器无法检测到的用户接口兼容性缺陷检测出来。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图2,图2是本说明书实施例提供的一种远程真实移动终端测试方法的一种可行的实施框架示意图,如图2所示,该实施框架可以至少包括测试执行机01、本地监听执行机02和至少一个真实移动终端03。
所述测试执行机01和本地监听执行机02可以为台式电脑、平板电脑、笔记本电脑等具备通信能力的实体设备,也可以包括运行于实体设备中的软体。所述真实移动终端03可以智能手机。
所述本地监听执行机02通过监听所述测试执行机01与所述测试执行机01进行数据交互,所述本地监听执行机02通过与所述至少一个真实移动终端03直接进行物理连接,与所述至少一个真实移动终端03进行数据交互。比如,可以将所述至少一个真实移动终端03直接插入所述本地监听执行机02的接口中。
所述测试执行机01运行有自动化测试工具,所述自动化测试工具通过运行测试脚本,将测试脚本中的指令转化为可以运行于真实移动终端03的机器命令,将所述机器命令发送出去。
所述本地监听执行机02监听到测试执行机01发送出的机器命令,将所述机器命令通过调试命令端口发送至所述至少一个真实移动终端03,再接收所述至少一个真实移动终端03的反馈结果,将所述反馈结果反馈至所述测试执行机01。
以下介绍本申请的一种远程真实移动终端测试方法,图3示出了本申请实施例提供的一种远程真实移动终端测试方法的流程示意图,本申请提供了如实施例或流程图上述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。图3所示的方法以本地监听执行机为实施主体,上述方法可以包括:
S101.获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址。
在一个实施例中,本地监听执行机可以通过虚拟网络控制台与测试执行机通信。具体地,所述第一通信地址可以为当所述测试执行机中运行所述虚拟网络控制台的客户端时,所述虚拟网络控制台的客户端的通信端口号。
示例性的,所述虚拟网络控制台可以为VNC,所述测试执行机可以运行VNC客户端,而本次监听执行机运行VNC服务器。
在一个实施例中,真实移动终端与本地监听执行机物理连接,比如,可以将真实移动终端插在所述本地监听执行机对外暴露的通信接口上,比如,可以插在本地监听执行机的USB接口上。本地监听执行机可以通过调试命令端口与真实移动终端进行通信,第二通信地址即为调试命令端口号。
S103.根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信。
在一个实施例中,所述测试执行机中运行有虚拟控制台客户端,所述第二通信地址为调试命令端口号,所述根据所述第一通信地址和所述第二通信地址配置本地监听执行机,如图4所示,包括:
S1031.根据所述第一通信地址,在所述本地监听执行机中配置虚拟控制台服务器。
示例性的,如图5所示,在所述本地监听执行机中配置虚拟控制台服务器,包括:
S10311.在所述本地监听执行机中安装虚拟控制台服务器。
S10312.在所述虚拟控制台服务器的配置选项中将通信地址设置为所述第一通信地址。
示例性的,如图6所示,选项“Allow VNC connections over TCP”被开启后,将其对应的端口号设置为所述第一通信地址的端口号,则通信地址设置成功。
在一个实施例中,为了提升通信安全性,还可以在所述虚拟控制台服务器中设置用户名和密码,如图7所示,通过设置用户名和密码,对与该虚拟控制台服务器的通信的设备进行安全限制,从而提升测试安全性,避免非授权设备获取测试数据。
S10313.在所述虚拟控制台服务器的配置选项中确认开启通信连接。
由于虚拟控制台客户端被设置于远程的测试执行机中,而远程的测试执行机是运行测试脚本的机器,不便随意操作避免对测试过程产生影响。因此,在一个实施例中,可以另行配置测试机,所述测试机用于测试所述本地监听执行机中安装的虚拟控制台服务器是否有效。
具体地,本申请实施例中还包括配置测试机,基于测试机测试所述虚拟控制台服务器是否有效,如图8所示,包括:
S1.在所述本地监听执行机所在的内网中配置测试机。
S2.在所述测试机中安装虚拟控制台远程桌面。
S3.对所述虚拟控制台远程桌面进行配置,以使得所述虚拟控制台远程桌面的用户名密码与所述虚拟控制台服务器一致,并且所述虚拟控制台远程桌面的通信地址为所述第一通信地址。
S4.若所述虚拟控制台远程桌面显示出授权界面,则判定所述虚拟控制台服务器有效。
示例性的,在为所述虚拟控制台远程桌面设置用户名密码,以及通信地址后,如果显示出授权界面,则表征所述虚拟控制台服务器有效。如图9所示,当到达授权界面,则说明虚拟控制台服务器有效。
S1032.对防火墙进行第一配置,以使得所述防火墙允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信。
本申请中对防火墙进行第一配置的目的在于允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信,从应用程序层面防止防火墙对于应用程序正常获取数据的过程产生阻碍。
具体地,所述对防火墙进行第一配置,以使得所述防火墙允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信,如图10所示,包括:
S10321.展示防火墙配置界面。
具体地,所述防火墙配置界面可以响应于在控制面板中对防火墙的搜索指令而被显示出来。
S10322.获取基于所述防火墙配置界面输入的允许指令,所述允许指令用于将虚拟控制台服务器的执行文件安装路径添加到允许的应用中。
示例性的,用户可以通过在防火墙配置界面中输入虚拟控制台服务器的执行文件安装路径,并且选中执行文件vncservice.exe,将其添加到“允许的应用”中,来触发所述允许指令。
S10323.基于所述允许指令,将所述防火墙配置为允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信。
示例性的,用户可以通过触发第一确认指令使得所述允许指令生效,所述允许指令生效后,即可将所述防火墙配置为允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信。
S1033.根据所述第二通信地址对防火墙进行第二配置,以使得基于调试命令端口号传输的数据被允许通过所述防火墙。
本申请中对防火墙进行第二配置的目的在于允许所述本地监听执行机通过调试命令端口号对应的端口收发数据,即防护墙不对这个端口的数据进行拦截。
具体地,所述对防火墙进行第二配置,以使得基于调试命令端口号传输的数据被允许通过所述防火墙,如图11所示,包括:
S10331.展示防火墙配置界面的设置选项。
S10332.响应于对所述设置选项中的入站规则的编辑指令,显示入站规则编辑界面。
示例性的,用户可以通过在所述防火墙配置界面的设置选项中点击入站规则对应的选项,触发所述编辑指令,从而显示出入站规则编辑界面。
S10333.获取基于所述入站规则编辑界面输入的添加指令,所述添加指令用于将所述第二通信地址添加入所述入站规则。
S10334.基于所述添加指令,将所述防火墙配置为允许与所述第二通信地址交互的数据通过所述防火墙。
示例性的,用户可以通过触发第二确认指令使得所述添加指令生效,所述添加指令生效后,即可将所述防火墙配置为允许与所述第二通信地址交互的数据通过所述防火墙。
如图12-13所示,在入站规则向导中指定第二通信地址,然后使得所述入站规则生效,即可完成对防火墙的第二配置。
S1034.在所述本地监听执行机中启动对于调试命令端口号对应的端口的监听程序。
具体地,所述监听程序用于对所述第二通信地址进行监听。在许多场景中,第二通信地址可以是调试命令端口。以对于安卓系统的真实移动终端进行测试为例,可以基于安卓调试桥ADB与所述真实移动终端进行通信,所述第二通信地址即为对于安卓调试桥ADB的通信端口,即5037端口。
在一些实施例中,可以将监听程序的启动动作统一以脚本形式记录,将所述脚本保存在版本控制系统之中。示例性的,将该监听程序的启动动作记录在SVN系统中的start.bat文件中,如图14所示,其示出start.bat文件的运行界面,通过运行start.bat文件启动该监听程序。
S105.获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到。
在一个实施例中,为了可以无差别对多个真实移动终端进行测试,在所述获取所述测试执行机发出的测试命令之前,所述本地监听执行机还执行下述步骤:将连接至所述本地监听执行机中的至少一个真实移动终端的标识上报至所述测试执行机,以便于所述测试执行机在所述至少一个真实移动终端确定至少一个待测试的真实移动终端。相应的,步骤S105中的测试命令中包括待测试的真实移动终端标识和测试动作,以使得所述待测试的真实移动终端可以执行所述测试动作,从而完成对于所述待测试的真实移动终端的测试。即该实施例中,可以通过由本地监听执行机向测试执行机反馈连接至所述本地监听执行机中的至少一个真实移动终端的标识的方式,使得测试执行机可以对于各个能够参与测试的真实移动终端独立测试。
在一个实施例中,在所述测试执行机中还可设置有测试计划,所述测试计划可以用于在所述至少一个真实移动终端中选择至少一个待测试的真实移动终端,使得测试执行机可根据测试计划,在至少一个真实移动终端中选择至少一个待测试的真实移动终端进行测试。进一步地,还可以在所述测试计划中设置测试周期,测试条件,测试内容,测试指标等内容。示例性的,可以通过设置所述测试周期触发测试计划的周期性自动执行,可以通过设置所述测试条件触发测试计划的有条件执行,所述测试周期和所述测试条件可以同时生效或则一生效。所述测试内容中可以包括至少一条测试用例,通过执行所述至少一条测试用例实施自动化测试,并基于测试指标获取测试结果。所述测试结果中可以包括测试指标对应的数据,也可以包括基于测试指标对应的数据进行进一步数据处理得到的结果。
在一个实施例中,可以基于所述测试周期和/或测试条件自动触发所述测试内容中测试用例的执行,在所述测试用例执行之前,自动在所述至少一个真实移动终端中选择至少一个待测试的真实移动终端,并向选定的待测试的真实移动终端发送所述测试用例对应的测试指令,获取并记录测试结果。
S107.将所述测试命令传输至所述真实移动终端。
S109.获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
在一个实施例中,还可以所述本地监听执行机中查看参与测试的真实移动终端。如图15所示,第一个和第二个真实移动终端当前没有参与测试,而第三个真实移动终端参与测试。
如图16所示,本申请示出的一种远程真实移动终端测试方法可以通过设置本地监听执行机,由本地监听执行机对远程测试执行机进行监听,并将监听结果发送至于所述本地监听执行机物理连接的真实移动终端,以及将真实移动终端产生的反馈发送至测试执行机的方式使得远程的测试执行机可以对于真实移动终端进行测试。图16中远程的测试执行机本身可以通过自身运行自动测试工具,也可以与能够完成自动化测试的平台通信,以执行自动化测试脚本。图16中将测试执行机以及自动化测试的平台单独框选出来,表征测试执行机以及自动化测试的平台不在本地,而是通过远程的方式对本地的真实移动终端进行自动化测试。
在一个实施例中,如图17所示,可以在本地监听执行机中安装版本控制系统SVN和虚拟控制台服务器(VNC服务器),通过在所述虚拟控制台服务器中设置密码和端口号,使得虚拟控制台服务器可以与测试执行机中的虚拟控制台客户端通信。通过设置所述本地监听执行机的防火墙,编辑防护墙的入站规则,可以使得所述本地监听执行机与测试执行机之间的通信数据,以及所述本地监听执行机与真实的移动终端之间的通信数据均可以通过所述防火墙。通过配置测试机可以验证对于虚拟控制台的配置是否正确,如若正确,可以在所述本地监听执行机中部署监控程序,启动所述监听程序,即可验证上述配置是否成功,如若成功,即可基于本地监听执行机对真实移动终端进行测试。
本申请中以本地监听执行机作为中转,在本地即可构建真实移动终端的测试环境,通过与远程的自动化测试平台以及测试执行机通信,可以实现本地真实移动终端的测试,本申请的方案并不需要对于远程的自动化测试平台以及测试执行机进行大幅度的改造,成本低,可实施性强,也可以使得本地的真实移动终端的测试摆脱远程的自动化测试平台以及测试执行机的限制。
示例性的,在某些远程自动化测试场景中,自动化测试平台或者测试执行机会可能限制直接进行自动化测试的真实移动终端的权限和/或数量,比如限定只有具备Root权限的真实移动终端才能够被测试,或者至多只能够对两个真实移动终端进行测试,而本申请中,通过设置本地监听执行机,而本地监听执行机可以通过物理连接的方式连接更多数量的真实移动终端,因此,可以突破远程自动化测试场景中固有的对于自动化测试的真实移动终端的权限和/或数量的限制。
相较于相关技术中在远程自动化测试场景中只能够使用模拟器进行测试,本申请可以在远程自动化测试场景中依然对真实移动终端进行测试,而真实移动终端相较于模拟器的优势不言而喻,比如,对于真实移动终端的测试结果更为准确直接,不存在由于模拟器自身缺陷降低测试成功率或者增加测试缺陷排查难度的情况;再比如,真实移动终端的测试环境完全可控,通过对于真实移动终端进行设置,可以构造出各种精细的被测对象,比如将无线模块,中央处理器,代理各有不同真实移动终端均作为被测对象,而模拟器只有几种固定型号,无法满足精细测试要求。
在许多场景中,测试执行机以及自动化测试平台管理团队与移动终端的测试团队分属不同部门,本申请中的方法可以在不对测试执行机以及自动化测试平台管理团队造成额外负担的情况下,在本地实现真实移动终端的测试,显著提升测试成功率,降低测试缺陷排查难度,并且本地监听执行机配置成功后可以一直为真实移动终端提供测试环境,为测试提供很大便利,甚至将远程的模拟器测试完全取代,全部使用真实移动终端进行测试,从而显著提升测试效率。进一步地,本申请中提供的远程真实移动终端测试方法通过对真实移动终端进行测试,还可以将终端模拟器无法检测到的用户接口兼容性缺陷检测出来。
本申请实施例还公开了一种远程真实移动终端测试装置,如图18所示,上述装置包括:
通信地址获取模块201,用于获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;
通信配置模块203,用于根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;
监听模块205,用于获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;
命令传输模块207,用于将所述测试命令传输至所述真实移动终端;
测试结果反馈模块209,用于获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
具体地,本申请实施例公开一种远程真实移动终端测试装置与上述对应的方法实施例均基于相同发明构思。详情请参见方法实施例,在此不再赘述。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一种远程真实移动终端测试方法。
本申请实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质可以存储有多条指令。上述指令可以适于由处理器加载并执行本申请实施例上述的一种远程真实移动终端测试方法。
进一步地,图19示出了一种用于实现本申请实施例所提供的方法的设备的硬件结构示意图,上述设备可以参与构成或包含本申请实施例所提供的装置或系统。如图19所示,设备10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图19所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,设备10还可包括比图19中所示更多或者更少的组件,或者具有与图19所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到设备10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中上述的方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的一种远程真实移动终端测试方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括设备10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(NetworkInterfaceController,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与设备10(或移动设备)的用户界面进行交互。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,上述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上上述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种远程真实移动终端测试方法,其特征在于,所述方法包括:
获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;
根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;
获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;
将所述测试命令传输至所述真实移动终端;
获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
2.根据权利要求1所述的方法,其特征在于,所述测试执行机中运行有虚拟控制台客户端,所述第二通信地址为调试命令端口号,所述根据所述第一通信地址和所述第二通信地址配置本地监听执行机,包括:
根据所述第一通信地址,在所述本地监听执行机中配置虚拟控制台服务器;
对防火墙进行第一配置,以使得所述防火墙允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信;
根据所述第二通信地址对防火墙进行第二配置,以使得基于调试命令端口号传输的数据被允许通过所述防火墙;
在所述本地监听执行机中启动对于调试命令端口号对应的端口的监听程序。
3.根据权利要求2所述的方法,其特征在于,还包括:
在所述本地监听执行机所在的内网中配置测试机;
在所述测试机中安装虚拟控制台远程桌面;
对所述虚拟控制台远程桌面进行配置,以使得所述虚拟控制台远程桌面的用户名密码与所述虚拟控制台服务器一致,并且所述虚拟控制台远程桌面的通信地址为所述第一通信地址;
若所述虚拟控制台远程桌面显示出授权界面,则判定所述虚拟控制台服务器有效。
4.根据权利要求2或3所述的方法,其特征在于,所述对防火墙进行第一配置,以使得所述防火墙允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信,包括:
展示防火墙配置界面;
获取基于所述防火墙配置界面输入的允许指令,所述允许指令用于将虚拟控制台服务器的执行文件安装路径添加到允许的应用中;
基于所述允许指令,将所述防火墙配置为允许所述虚拟控制台服务器通过所述防火墙与所述虚拟控制台客户端进行通信。
5.根据权利要求2或3所述的方法,其特征在于,所述对防火墙进行第二配置,以使得基于调试命令端口号传输的数据被允许通过所述防火墙,包括:
展示防火墙配置界面的设置选项;
响应于对所述设置选项中的入站规则的编辑指令,显示入站规则编辑界面;
获取基于所述入站规则编辑界面输入的添加指令,所述添加指令用于将所述第二通信地址添加入所述入站规则;
基于所述添加指令,将所述防火墙配置为允许与所述第二通信地址交互的数据通过所述防火墙。
6.根据权利要求2或3所述的方法,其特征在于,在所述获取所述测试执行机发出的测试命令之前,所述本地监听执行机还执行下述步骤:
将连接至所述本地监听执行机中的至少一个真实移动终端的标识上报至所述测试执行机,以使得所述测试执行机在所述至少一个真实移动终端中确定至少一个待测试的真实移动终端。
7.根据权利要求6所述的方法,其特征在于,还包括:在所述测试执行机中设置测试计划,所述测试计划用于在所述至少一个真实移动终端中选择至少一个待测试的真实移动终端。
8.一种远程真实移动终端测试装置,其特征在于,所述装置包括:
通信地址获取模块,用于获取远程的测试执行机的第一通信地址和所述真实移动终端的第二通信地址;
通信配置模块,用于根据所述第一通信地址和所述第二通信地址配置本地监听执行机,以使得所述本地监听执行机基于所述第一通信地址与所述测试执行机通信,并且基于第二通信地址与所述真实移动终端通信;
监听模块,用于获取所述测试执行机发出的测试命令,所述测试命令由所述测试执行机基于自动化测试工具运行自动化测试脚本得到;
命令传输模块,用于将所述测试命令传输至所述真实移动终端;
测试结果反馈模块,用于获取所述真实移动终端反馈的测试结果,将所述测试结果传输至所述测试执行机。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1至7中任一项所述的一种远程真实移动终端测试方法。
10.一种电子设备,其特征在于,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求1至7中任一项所述的一种远程真实移动终端测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110020358.0A CN114741273A (zh) | 2021-01-07 | 2021-01-07 | 一种远程真实移动终端测试方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110020358.0A CN114741273A (zh) | 2021-01-07 | 2021-01-07 | 一种远程真实移动终端测试方法、装置、存储介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114741273A true CN114741273A (zh) | 2022-07-12 |
Family
ID=82274280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110020358.0A Pending CN114741273A (zh) | 2021-01-07 | 2021-01-07 | 一种远程真实移动终端测试方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114741273A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132490A (zh) * | 2023-01-13 | 2023-05-16 | 支付宝(杭州)信息技术有限公司 | 设备的远程调试方法、装置以及设备 |
-
2021
- 2021-01-07 CN CN202110020358.0A patent/CN114741273A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116132490A (zh) * | 2023-01-13 | 2023-05-16 | 支付宝(杭州)信息技术有限公司 | 设备的远程调试方法、装置以及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11652918B2 (en) | Using automatically collected device problem information to route and guide users' requests | |
CN110032507B (zh) | 应用程序测试方法、装置、系统、电子设备及存储介质 | |
CN111159049B (zh) | 接口自动化测试方法及系统 | |
CN110493812B (zh) | 配网测试的处理方法、装置、系统、处理器及主控设备 | |
CN110119350B (zh) | 软件开发工具包测试方法、装置和设备及计算机存储介质 | |
CN107102949B (zh) | 应用程序离线测试方法及工具 | |
CN105389263A (zh) | 应用软件权限监控方法、系统及设备 | |
CN110825985B (zh) | 数据采集系统、方法、装置、控制设备及代理设备 | |
CN110659198A (zh) | 应用程序的测试用例执行方法、装置和软件测试系统 | |
WO2017028574A1 (zh) | 一种路由器测试方法和测试装置 | |
CN113553257B (zh) | 测试方法、装置、存储介质及电子设备 | |
CN112015654A (zh) | 用于测试的方法和装置 | |
CN110650035A (zh) | 用于生成和管理工业网络中的虚拟工业设备的方法和系统 | |
CN106815150B (zh) | 服务端接口测试系统及方法 | |
CN110287112B (zh) | 客户端的维护方法、装置及可读存储介质 | |
CN114741273A (zh) | 一种远程真实移动终端测试方法、装置、存储介质及设备 | |
CN113225760A (zh) | 网络测试方法及设备 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
KR20120102967A (ko) | 애플리케이션 검증 시스템 및 방법 | |
CN112346947A (zh) | 性能检测方法、装置、电子设备和计算机可读介质 | |
CN112306857A (zh) | 用于测试应用的方法和装置 | |
CN111104331A (zh) | 软件管理方法、终端设备及计算机可读存储介质 | |
CN107203471B (zh) | 联调方法、服务平台及计算机存储介质 | |
CN112463610A (zh) | 一种测试过程控制方法及装置 | |
CN111082984A (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 |