CN109634856B - 基于云服务的iOS智能终端远程真机调试系统及方法 - Google Patents

基于云服务的iOS智能终端远程真机调试系统及方法 Download PDF

Info

Publication number
CN109634856B
CN109634856B CN201811478229.0A CN201811478229A CN109634856B CN 109634856 B CN109634856 B CN 109634856B CN 201811478229 A CN201811478229 A CN 201811478229A CN 109634856 B CN109634856 B CN 109634856B
Authority
CN
China
Prior art keywords
intelligent terminal
real
control
xcuitestagent
ios intelligent
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.)
Active
Application number
CN201811478229.0A
Other languages
English (en)
Other versions
CN109634856A (zh
Inventor
蒋晓海
黄�俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Testin Information Technology Co Ltd
Original Assignee
Beijing Testin Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Testin Information Technology Co Ltd filed Critical Beijing Testin Information Technology Co Ltd
Priority to CN201811478229.0A priority Critical patent/CN109634856B/zh
Publication of CN109634856A publication Critical patent/CN109634856A/zh
Application granted granted Critical
Publication of CN109634856B publication Critical patent/CN109634856B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

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

本发明公开了一种基于云服务的IOS智能终端远程真机调试系统及方法,XCUITestAgent服务端安装在iOS智能终端上,提供代理服务以及执行控制中心传输过来的控制指令;控制中心的控制程序接收Web端发送来的对需要调试的iOS智能终端的控制指令,通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端,接收XCUITestAgent服务端所获取的iOS智能终端的实时屏幕数据和/或设备日志并发送至Web端;Web端收集鼠标控制指令并封装好发送给控制中心的控制程序,以及接收控制中心的控制程序反馈的iOS智能终端的实时屏幕数据和/或设备日志并实时展示。本发明实现测试人员使用浏览器在网页上进行真机调试,解决了本地测试机型不足、无法同时操作多个设备等测试难题。

Description

基于云服务的iOS智能终端远程真机调试系统及方法
技术领域
本发明涉及一种智能终端远程真机调试方法,具体涉及一种基于云服务的iOS智能终端远程真机调试系统及方法。
背景技术
随着信息技术的高速发展,移动互联网已经成为人们生活中不可缺少的一环,娱乐、购物、社交、金融等各个行业的企业为了提升自身的服务,都开发了各种的移动APP。在这个大背景下,为了提高应用的适配性、客户的使用体验,移动应用的测试显得越来越重要。但是机型不全、系统版本不全、设备管理不方便是测试当中遇到的显著问题,特别是iOS设备购置成本很高。
发明内容
针对现有技术的不足,本发明旨在提供一种基于云服务的iOS智能终端远程真机调试的方法,实现测试人员使用浏览器在网页上进行真机调试,解决了本地测试机型不足、无法同时操作多个设备等测试难题。
针对现有技术的不足,本发明采用如下技术方案:
本发明提供一种基于云服务的IOS智能终端远程真机调试系统,包括:
XCUITestAgent服务端:安装在iOS智能终端上,用于提供代理服务以及执行控制中心传输过来的控制指令;
控制中心:具有采用Java语言编写的控制程序以及用于object-C语言编写的命令行工具capture;控制程序用于接收Web端发送来的对需要调试的iOS智能终端的控制指令,用于通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端,以及用于接收XCUITestAgent服务端所获取的iOS智能终端的实时屏幕数据和/或设备日志并发送至Web端;
Web端:用于收集鼠标控制指令并封装好发送给控制中心的控制程序;用于接收控制中心的控制程序反馈的iOS智能终端的实时屏幕数据和/或设备日志并实时展示。
进一步地,所述控制中心采用Mac OS系统的PC机。
本发明还提供一种利用上述系统进行基于云服务的IOS智能终端远程真机调试方法,包括如下步骤:
S1、在iOS智能终端上安装一个基于XCTest测试框架的XCUITestAgent服务端;
S2、Web端通过浏览器实时接收需要调试的iOS智能终端的屏幕数据;收集鼠标在浏览器上对手机映射屏的操作,并且封装成控制指令,发送给控制中心的控制程序;
S3、控制中心的控制程序接收来自Web端的控制指令之后,通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端;
S4、XCUITestAgent服务端根据控制指令对iOS智能终端进行操作,所述操作包括实时获取iOS智能终端的屏幕数据、安装卸载应用、获取设备日志;当控制指令中包含获取iOS智能终端的屏幕数据和获取设备日志中的一个或两个时,XCUITestAgent服务端在获取iOS智能终端的实时屏幕数据和/或设备日志之后实时发送给控制中心;
S5、控制中心的控制程序将iOS智能终端的实时屏幕数据和/或设备日志实时推送至Web端的浏览器;
S6、当Web端接收到iOS智能终端的实时屏幕数据和/或设备日志时,实时展示出来。
本发明的有益效果在于:通过本发明可以实现测试人员使用浏览器在网页上进行真机调试,解决了本地测试机型不足、无法同时操作多个设备等测试难题。
附图说明
图1为本发明实施例1的系统结构示意图;
图2为本发明实施例2的方法流程示意图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
实施例1
本实施例提供一种基于云服务的IOS智能终端远程真机调试系统,如图1所示,包括:
XCUITestAgent服务端:基于XCTest测试框架,在iOS智能终端上安装一个XCUITestAgent作为服务端,用于提供代理服务以及执行控制中心传输过来的控制指令;
控制中心:采用Mac OS系统的PC机,具有采用Java语言编写的控制程序以及用于object-C语言编写的命令行工具capture;控制程序用于接收Web端发送来的对需要调试的iOS智能终端的控制指令,用于通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端,以及用于接收XCUITestAgent服务端所获取的iOS智能终端的实时屏幕数据和/或设备日志并发送至Web端;
进一步地,控制中心的控制程序具体可通过TCP协议接收Web端发送来的对iOS智能终端的控制指令以及将iOS智能终端的实时屏幕数据发送至Web端。
Web端:用于收集鼠标控制指令并封装好发送给控制中心的控制程序;用于接收控制中心的控制程序反馈的iOS智能终端的实时屏幕数据和/或设备日志并实时展示。
进一步地,Web端具体可通过TCP协议将封装好后的控制指令发送至控制中心的控制程序以及接收控制中心的控制程序反馈的需要调试的iOS智能终端的实时屏幕数据。
XCUITestAgent是Facebook推出的iOS移动测试框架WebDriverAgent,集成了WebDriverAgent的功能。XCUITestAgent在iOS设备上实现了一个WebDriver server,借助这个server可以对iOS设备远程控制。XCUITestAgent通过连接XCTest.framework调用苹果的API直接在设备上执行命令,例如:启动、关闭应用,点击、滚动视图,或者确定页面展示是否正确。
在本实施例中,采用Mac OS系统的PC机作为控制中心,即上位机。控制中心中运行着使用Java语言编写的控制程序,是整个系统的枢纽。在调试开始之前,先将需要调试的iOS智能终端通过USB连接到上位机上,上位机控制着iOS智能终端的初始化,通过指令将XCUITestAgent服务端安装到iOS智能终端上,并在iOS智能终端上启动WebDriver server;同时对外提供iOS智能终端的请求地址。
调试时,当接收到Web端的浏览器的Web页面发送来对iOS智能终端的控制指令,上位机启动capture(object-C语言编写的命令行工具)通过TCP协议与XCUITestAgent服务端进行通讯。上位机的控制程序负责将Web页面发送来的控制指令封装后发送给capture,再由capture发送给XCUITestAgent服务端,最终由XCUITestAgent服务端来根据控制指令对iOS智能终端进行操作,例如从iOS智能终端上获取实时屏幕数据,以及在iOS智能终端上安装火卸载应用、获取设备日志等。XCUITestAgent服务端获取的屏幕数据回传至控制中心的控制程序,控制程序对屏幕数据进行解析、封装后发送给Web端。
上述系统解决了本地测试机型不足、无法同时操作多个设备、设备管理难等测试难题。
实施例2
本实施例提供一种利用实施例1所述的系统进行基于云服务的IOS智能终端远程真机调试方法,如图2所示,包括如下步骤:
S1、在iOS智能终端上安装一个基于XCTest测试框架的XCUITestAgent服务端;
S2、Web端通过浏览器实时接收需要调试的iOS智能终端的屏幕数据;收集鼠标在浏览器上对手机映射屏的操作,并且封装成控制指令,发送给控制中心的控制程序;
S3、控制中心的控制程序接收来自Web端的控制指令之后,通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端;
S4、XCUITestAgent服务端根据控制指令对iOS智能终端进行操作,所述操作包括实时获取iOS智能终端的屏幕数据、安装卸载应用、获取设备日志;当控制指令中包含获取iOS智能终端的屏幕数据和获取设备日志中的一个或两个时,XCUITestAgent服务端在获取iOS智能终端的实时屏幕数据和/或设备日志之后实时发送给控制中心;
S5、控制中心的控制程序将iOS智能终端的实时屏幕数据和/或设备日志实时推送至Web端的浏览器;
S6、当Web端接收到iOS智能终端的实时屏幕数据和/或设备日志时,实时展示出来。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。

Claims (3)

1.一种基于云服务的IOS智能终端远程真机调试系统,其特征在于,包括:
XCUITestAgent服务端:安装在iOS智能终端上,用于提供代理服务以及执行控制中心传输过来的控制指令;
控制中心:具有采用Java语言编写的控制程序以及用于object-C语言编写的命令行工具capture;控制程序用于接收Web端发送来的对需要调试的iOS智能终端的控制指令,用于通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端,以及用于接收XCUITestAgent服务端所获取的iOS智能终端的实时屏幕数据和/或设备日志并发送至Web端;
Web端:用于收集鼠标控制指令并封装好发送给控制中心的控制程序;用于接收控制中心的控制程序反馈的iOS智能终端的实时屏幕数据和/或设备日志并实时展示;
其中,控制中心中运行着使用Java语言编写的控制程序,是整个系统的枢纽;在调试开始之前,先将需要调试的iOS智能终端通过USB连接到上位机上,上位机控制着iOS智能终端的初始化,通过指令将XCUITestAgent服务端安装到iOS智能终端上,并在iOS智能终端上启动WebDriver server;同时对外提供iOS智能终端的请求地址;调试时,当接收到Web端的浏览器的Web页面发送来对iOS智能终端的控制指令,上位机启动capture通过TCP协议与XCUITestAgent服务端进行通讯;上位机的控制程序负责将Web页面发送来的控制指令封装后发送给capture,再由capture发送给XCUITestAgent服务端,最终由XCUITestAgent服务端来根据控制指令对iOS智能终端进行操作,XCUITestAgent服务端获取的屏幕数据回传至控制中心的控制程序,控制程序对屏幕数据进行解析、封装后发送给Web端。
2.根据权利要求1所述的基于云服务的IOS智能终端远程真机调试系统,其特征在于,所述控制中心采用Mac OS系统的PC机。
3.一种利用上述任一权利要求所述的系统进行基于云服务的IOS智能终端远程真机调试方法,其特征在于,包括如下步骤:
S1、在iOS智能终端上安装一个基于XCTest测试框架的XCUITestAgent服务端;
S2、Web端通过浏览器实时接收需要调试的iOS智能终端的屏幕数据;收集鼠标在浏览器上对手机映射屏的操作,并且封装成控制指令,发送给控制中心的控制程序;
S3、控制中心的控制程序接收来自Web端的控制指令之后,通过capture与XCUITestAgent服务端通讯连接并通过capture将控制指令发送至XCUITestAgent服务端;
S4、XCUITestAgent服务端根据控制指令对iOS智能终端进行操作,所述操作包括实时获取iOS智能终端的屏幕数据、安装卸载应用、获取设备日志;当控制指令中包含获取iOS智能终端的屏幕数据和获取设备日志中的一个或两个时,XCUITestAgent服务端在获取iOS智能终端的实时屏幕数据和/或设备日志之后实时发送给控制中心;
S5、控制中心的控制程序将iOS智能终端的实时屏幕数据和/或设备日志实时推送至Web端的浏览器;
S6、当Web端接收到iOS智能终端的实时屏幕数据和/或设备日志时,实时展示出来。
CN201811478229.0A 2018-12-04 2018-12-04 基于云服务的iOS智能终端远程真机调试系统及方法 Active CN109634856B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811478229.0A CN109634856B (zh) 2018-12-04 2018-12-04 基于云服务的iOS智能终端远程真机调试系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811478229.0A CN109634856B (zh) 2018-12-04 2018-12-04 基于云服务的iOS智能终端远程真机调试系统及方法

Publications (2)

Publication Number Publication Date
CN109634856A CN109634856A (zh) 2019-04-16
CN109634856B true CN109634856B (zh) 2021-12-17

Family

ID=66071147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811478229.0A Active CN109634856B (zh) 2018-12-04 2018-12-04 基于云服务的iOS智能终端远程真机调试系统及方法

Country Status (1)

Country Link
CN (1) CN109634856B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094261B (zh) * 2021-03-23 2023-06-27 杭州电魂网络科技股份有限公司 自动更新测试环境的方法、系统、电子装置和存储介质
CN115514750A (zh) * 2021-06-21 2022-12-23 北京字节跳动网络技术有限公司 电子设备远程控制方法、服务器、系统、介质和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323093A (ja) * 2004-05-07 2005-11-17 Fujitsu Ltd Webサーバを利用した遠隔操作制御プログラム
CN103458087A (zh) * 2013-08-30 2013-12-18 华南理工大学 一种基于rtmp的远程手机测试体验方法
CN106961362A (zh) * 2017-03-09 2017-07-18 杭州铜板街互联网金融信息服务有限公司 自动化测试方法及移动云测试系统
CN108804302A (zh) * 2017-05-04 2018-11-13 腾讯科技(深圳)有限公司 一种远程测试方法、系统及相关设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323093A (ja) * 2004-05-07 2005-11-17 Fujitsu Ltd Webサーバを利用した遠隔操作制御プログラム
CN103458087A (zh) * 2013-08-30 2013-12-18 华南理工大学 一种基于rtmp的远程手机测试体验方法
CN106961362A (zh) * 2017-03-09 2017-07-18 杭州铜板街互联网金融信息服务有限公司 自动化测试方法及移动云测试系统
CN108804302A (zh) * 2017-05-04 2018-11-13 腾讯科技(深圳)有限公司 一种远程测试方法、系统及相关设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"XCUITest官方文档";liuyuxuan2011;《https://blog.csdn.net/liuyuxuan2011/article/details/73742470》;20170626;正文第1-2页 *

Also Published As

Publication number Publication date
CN109634856A (zh) 2019-04-16

Similar Documents

Publication Publication Date Title
CN105302732B (zh) 一种移动终端的自动测试方法及装置
CN108804302B (zh) 一种远程测试方法、系统及相关设备
CN105450463B (zh) 硬件设备的调试方法、装置和系统
CN107332932B (zh) 一种基于fota的机器人系统远程升级方法
US20210334061A1 (en) Synchronous Display Method and Apparatus, Storage Medium and Electronic Device
CN104679659A (zh) 应用程序的测试方法及装置、电子设备
CN104461897A (zh) 一种应用程序测试的方法和设备
CN107678949B (zh) 实现嵌入式设备不同通信方式的自动化测试方法
CN105975367B (zh) 移动设备的测试方法和装置
CN109634856B (zh) 基于云服务的iOS智能终端远程真机调试系统及方法
CN103916283A (zh) 服务器压力测试系统和方法
WO2021120544A1 (zh) 用于调试设备的方法及装置
CN111209193A (zh) 程序的调试方法及装置
CN112612699A (zh) 一种hid人机交互场景用例通用自动化测试设备
Huang et al. Remote mobile test system: a mobile phone cloud for application testing
KR100794130B1 (ko) 이동통신단말기의 응용 프로그램 및 부가 서비스 자동기능시험장치
CN113709243B (zh) 设备远程控制方法及装置、电子设备和存储介质
CN102609353A (zh) 对程序调试进行管理的方法、装置及系统
CN111045940A (zh) 软件自动化测试方法、装置、架构、服务器及存储介质
CN109683780A (zh) 控制移动终端的方法、系统和被控终端
CN103927257A (zh) 一种安卓行为事件的触发方法和触发装置
CN108737337B (zh) 设备处理方法、装置、服务器及系统
CN105808419B (zh) 应用测试方法及终端
CN107391354B (zh) 自动监测终端性能的方法及系统、存储装置
CN112671814B (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
GR01 Patent grant
GR01 Patent grant