一种基于多进程的iOS兼容性自动化测试方法与装置制造方法及图纸

技术编号:29583845 阅读:14 留言:0更新日期:2021-08-06 19:42
本发明专利技术涉及一种基于多进程的iOS兼容性自动化测试方法与装置,方法包括:获取连接到PC端的各iOS端的识别码;获取测试脚本;PC端编译iOS驱动,根据所述各iOS端的识别码为各iOS端安装应用;PC端运行所述iOS驱动,在进程池的各进程中分别调用所述测试脚本进行多个iOS端的并发测试。本发明专利技术采用iOS驱动来连接PC端和iOS端,并且采用多进程分别调用测试脚本进行多个iOS端并发的兼容性测试,极大地提高了iOS兼容性测试的效率,解决了现有技术的兼容性测试效率低下的问题。

【技术实现步骤摘要】
一种基于多进程的iOS兼容性自动化测试方法与装置
本专利技术一般地涉及软件测试领域。更具体地,本专利技术涉及一种基于多进程的iOS兼容性自动化测试方法与装置。
技术介绍
移动客户端是安装在移动设备中的软件,通过移动客户端,企业可以将企业的产品和服务呈现到用户面前。相比于传统的PC客户端,在便捷性、交互性和及时性等方面,移动客户端具有明显的优势。而且随着互联网的不断发展,移动客户端的价值更加凸显,已经成为企业对外服务的重要渠道之一。由于移动设备、操作系统和平台的差异,移动客户端也存在兼容性问题。例如,由于兼容性缺陷产生的软件闪退、UI异常、无法安装等问题;而且这些问题具有隐蔽性强、测试成本高、对设备影响严重的特点,已经成为当前移动客户端研发亟待解决的难题。因此,为了保证移动客户端质量,使移动客户端能够与各种硬件、软件、操作系统和平台兼容,移动客户端也需要进行兼容性测试。兼容性测试是指测试软件在特定硬件平台上,不同的应用软件上,不同的操作系统平台上,不同的网络中环境中是否能够友好运行的测试。即测试一个测试软件在不同的手机上、不同的机型上、不同的平台上能否都正常的执行。对于Android系统而言,其具有极强的开源性,而且存在ADB(AndroidDebugBridgeAndroid,调试桥接器,是用于管理模拟器或真机状态的万能工具)这种强大的工具,能够进行高效的兼容性测试。对于iOS系统而言,虽然它不像Android存在严重的品牌及型号碎片化,但截至目前也推出了二十余款机型(iPhone一代至iPhone12Promax)及多种系统版本(iOS4至iOS14),各个大的系统版本下又包含了多个小版本,每次版本的升级都带来了新功能和原有功能变更等差异点;而且iOS较为封闭,当前并没有应用于iOS的类似ADB的工具;进行iOS兼容性测试需要耗费极大的人力,想要高效地进行兼容性测试存在着较大困难。
技术实现思路
本专利技术提供一种基于多进程的iOS兼容性自动化测试方法,以解决现有技术iOS的兼容性测试效率低的问题;相应地,本专利技术还提供了一种基于多进程的iOS兼容性自动化测试装置。在第一方面中,为了解决上述技术问题,本专利技术的实施例提供了一种基于多进程的iOS兼容性自动化测试方法,包括:获取连接到PC端的各iOS端的识别码;获取测试脚本;PC端编译iOS驱动,根据所述各iOS端的识别码为各iOS端安装应用;PC端运行所述iOS驱动,在进程池的各进程中分别调用所述测试脚本进行多个iOS端的并发测试。在一个示例性的实施例中,所述iOS驱动采用WebDriverAgent;所述为各iOS端安装的应用为WebDriverAgentRunner。在一个示例性的实施例中,所述iOS端的识别码包括UDID。在一个示例性的实施例中,所述测试脚本的生成过程包括:录制脚本和优化脚本。在一个示例性的实施例中,所述优化脚本包括:图像识别与UI控件识别相结合,添加全局等待时间和优化屏幕滑动操作。在一个示例性的实施例中,所述图像识别与UI控件识别相结合包括:首先采用图像识别方式,若图像识别方式不成功则再采用UI控件识别方式。在一个示例性的实施例中,所述添加全局等待时间包括:在两步操作之间添加延时,延时时间由全局变量进行定义。在一个示例性的实施例中,所述优化屏幕滑动操作包括:获取iOS端的屏幕尺寸;依据获取的屏幕尺寸的比例进行滑动操作。在一个示例性的实施例中,PC端为每台iOS端分配不同的端口号,所述进程池中的各进程将iOS端的UDID及端口号作为参数进行传递,根据iOS端的UDID及端口号来区分各个iOS端。在第二方面中,本专利技术的实施例还提供了一种基于多进程的iOS兼容性自动化测试装置,其中包括通讯接口,处理器和存储器,所述通讯接口用于连接多个iOS端;所述存储器用于存储计算机程序,所述处理器执行所述计算机程序以实现上述第一方面中任一实施例所描述的方法的步骤。本专利技术实施例的基于多进程的iOS兼容性自动化测试方法,采用iOS驱动来连接PC端和iOS端,使得可以在PC端执行测试脚本,同时借助于进程池技术,可以由多进程分别调用测试脚本进行多个iOS端并发的兼容性测试,极大地提高了iOS兼容性测试的效率,节省了大量的人力成本和时间成本。附图说明通过参考附图阅读下文的详细描述,本专利技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本专利技术的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:图1为根据本专利技术一种实施例的自动化兼容性测试系统构成示意图;图2为根据本专利技术一种实施例的自动化兼容性测试方法流程示意图;图3为根据本专利技术另一种实施例的自动化兼容性测试方法流程示意图;图4为根据本专利技术一种实施例的测试架构示意图;图5为步骤S1的详细流程示意图;图6为步骤S3的详细流程示意图;以及图7为步骤S4的详细流程示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。基于多进程的iOS兼容性自动化测试系统如图1所示,包括一台苹果PC(基于MacOS)和若干台iOS终端设备,如iPhone、iPodtouch、iPad等iOS终端设备。上述iOS终端设备即苹果移动设备,或者iOS真机,为了方便表述和便于区分苹果PC和苹果移动设备,将上述苹果PC称为PC端,将iOS终端设备称为iOS端。图1中,PC端通过USB接口连接一个HUB(多端口转发器),该HUB连接多个iOS端,本实施例中包括两台iphone,一台ipodtouch和一台ipad,其中的两台iphone的型号可以是相同的,也可以是不同的。在其他实施例中,还可以连接更多的iOS端,例如第一iOS端、第二iOS端、第三iOS端和第四iOS设备等。为了保证测试的流畅性,所连接的iOS终端设备的数量不宜超过10台。在一个实际应用场景中,为了便于体现测试效果,优选采用一台苹果PC连接多台iphone手机,各iphone手机的型号及iOS系统版本可以相同或者不同;例如一台苹果PC可以连接两台基于相同iOS系统版本的iphone8,三台基于不同iOS系统版本的iphone11,一台iphone12。本实施例中的HUB为USBHUB,其能够将一个USB接口扩展为多个,并可以使这些接口同时使用。采用该设备的原因是PC端本身不具备与iOS端对应数量的通讯接口,需要通过HUB进行通讯接口的扩展。在其他实施例中,也可以采用USB以外的其他串行通讯接口来实现PC端与iOS端的连接,换言之,对于PC端与iOS端之间的物理接口方式,本专利技术不作限制。如图2所示出的一种本文档来自技高网
...

【技术保护点】
1.一种基于多进程的iOS兼容性自动化测试方法,其特征在于,包括:/n获取连接到PC端的各iOS端的识别码;/n获取测试脚本;/nPC端编译iOS驱动,根据所述各iOS端的识别码为各iOS端安装应用;/nPC端运行所述iOS驱动,在进程池的各进程中分别调用所述测试脚本进行多个iOS端的并发测试。/n

【技术特征摘要】
1.一种基于多进程的iOS兼容性自动化测试方法,其特征在于,包括:
获取连接到PC端的各iOS端的识别码;
获取测试脚本;
PC端编译iOS驱动,根据所述各iOS端的识别码为各iOS端安装应用;
PC端运行所述iOS驱动,在进程池的各进程中分别调用所述测试脚本进行多个iOS端的并发测试。


2.根据权利要求1所述的一种基于多进程的iOS兼容性自动化测试方法,其特征在于,所述iOS驱动采用WebDriverAgent,所述为各iOS端安装的应用为WebDriverAgentRunner。


3.根据权利要求1所述的一种基于多进程的iOS兼容性自动化测试方法,其特征在于,所述iOS端的识别码包括UDID。


4.根据权利要求1所述的一种基于多进程的iOS兼容性自动化测试方法,其特征在于,所述测试脚本的生成过程包括:录制脚本和优化脚本。


5.根据权利要求4所述的一种基于多进程的iOS兼容性自动化测试方法,其特征在于,所述优化脚本包括:图像识别与UI控件识别相结合,添加全局等待时间和优化屏幕滑动操作。


6.根据权利要求5所述的一种基于多...

【专利技术属性】
技术研发人员:赵红张大健王恩奇曹中全王晓影赵改侠方兴园孙思桐李华英骆炜李军丁衍
申请(专利权)人:中金金融认证中心有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1