0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 软件开发

被测应用无需做任何修改,使用不再局限于Mac上

发表时间:2023-11-12 09:03:26

文章来源:炫佑科技

浏览次数:155

菏泽炫佑科技

被测应用无需做任何修改,使用不再局限于Mac上

注:此处测试的应用程序不需要任何修改,其使用不再仅限于Mac。

开源地址:

我能为你做什么?

熟悉该工具集的同学可能知道上面提到的大部分功能。 为了方便日常使用,现有的功能也被重新实现(例如截图、查看日志、安装应用程序),以便您可以完成所有日常任务。 相关操作。

除了这些众所周知的功能外,还可以完成iOS设备的WDA启动和性能采集。

可能有些人不知道WDA是什么,这里简单介绍一下。 WDA的全称是一个为了实现黑盒iOS自动化而推出的项目。 该项目作为 iOS 手机上的应用程序运行。 被测应用程序无需进行任何更改(例如访问SDK)即可进行非侵入式测试。 唯一不方便的是手机必须连接Mac电脑,并且WDA App只能使用Mac上才有的功能运行,这也导致其推广困难。

本文将重点介绍如何完成WDA的启动。 原理比较简单:通过模拟与手机通信,向手机发送特定指令启动WDA,就可以摆脱Mac的限制,在Linux和iOS上运行iOS自动化。 在本发明出现之前,这些都是不可能的。 。

自动化软件开发平台_自动化软件开发_自动软件开发模式

安装

因为是一个项目,一条命令就可以完成安装pip3 -U。 安装完成后,执行几条命令测试一下,查看版本列表即可查看已连接的设备。

常用命令

安装应用程序

.ipa 通过 URL 安装应用程序(实际使用时必须将 URL 更改为正确的 URL) 应用程序启动 com.apple。 .jpg 查看系统日志和其他常用命令。 查看帮助命令。 基本上所有常用的命令都有-h。

启动

自动化软件开发_自动化软件开发平台_自动软件开发模式

目前,iOS*流行的黑盒自动化方法是通过WDA实现的。 在它出现之前,WDA只能通过启动,并且需要Mac才能运行它。

它不通过,而是直接与手机上的服务通信,完成手机上WDA的启动。 不同平台上都有开源实现,因此不仅可以在Mac上运行被测应用无需做任何修改,使用不再局限于Mac上,也可以在Linux上运行。

当然,苹果不会直接告诉我们有关通信协议的信息。 不过自动化软件开发,由于它本身就是一个,我们可以直接截获它的内容,并且基于开源社区现有的成果,它的大部分内容已经被破解。 先用它启动一次WDA,然后找到关键的通信内容,然后用它来模拟播放,然后丢弃。 与启动相比,由于通讯内容更加精简,启动速度更快(2s左右),也更稳定。

讲了很多理论,我们来看看如何使用。

先决条件

自动软件开发模式_自动化软件开发_自动化软件开发平台

数据线连接手机和电脑

您的手机上已经安装了此应用程序。 可以通过使用 xcode 编译源代码来安装,也可以使用使用开发人员证书重新签名的 .ipa 将其安装在手机上。

Linux默认没有这个服务,所以可以提前安装。 你可以参考这个问题:

如果前提条件满足,执行如下命令启动WDA。

自动化软件开发_自动化软件开发平台_自动软件开发模式

验证 WDA 是否工作的*简单方法是打开浏览器,网址::8100/ 如果可以看到以下输出,则说明 WDA 工作正常。

或者直接使用调度

跑步

有些用户可能开发能力较强,习惯直接使用OC或Swift编写UI自动化用例。 也支持pass。我在网上找到了一个OC写的demo工程。 使用xcode编译安装到手机上后,有两个应用程序。

执行测试的应用程序 被测应用程序

只需使用以下命令来执行

---id .. ----id 。

将被测应用程序和执行测试应用程序打包成ipa后,可以在多部手机上运行。

总结

目前这个项目在阿里巴巴内部使用得很好,希望大家能收到更多的反馈。 如果效果好的话希望能留下你的Star

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多