【iOS自动化】Xcode配置WebDriverAgent

WebDriverAgent 是 iOS 端自动化测试的工具,这里记录下 MacOS 环境 Xcode 如何配置 WebDriverAgent。

【重要】环境准备

‼️ 注意:Xcode 版本需要支持对应的 iOS 版本,而 Xcode 版本又依赖 MacOS 版本;在开始部署前,先确定你的Xcode版本是否支持你设备的iOS版本

📌 如果你的Xcode版本不支持对应iOS版本,解决方案如下:

1、Xcode版本小于15,并且 iOS 版本小于 17:

  • 查看当前版本xcode支持iOS设备版本:ls /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
  • 下载对应iOS版本压缩包并解压后放到/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 目录下,下载地址:https://github.com/filsv/iOSDeviceSupport

2、Xcode版本大于15已经不使用DeviceSupport的方式了:

  • 查看当前 iOS 设备版本需要的 Xcode 版本,以及对应Xcode版本所需要的MacOS版本(版本对应关系:https://developer.apple.com/support/xcode/)
  • 如果当前 MacOS 版本支持对应 Xcode 版本,则直接升级 Xcode 版本即可,如果不支持,则需要先升级 MacOS 版本
  • 升级 Xcode 到支持对应 iOS 设备的版本
如何升级到指定版本 Xcode?

如果当前 MacOS 版本不支持升级最新成Xcode,但是更低版本的 Xcode 能够满足需求的情况下,可以下载指定版本的Xcode进行安装:

如何升级指定版本 MacOS?

如果不想升级到最新版本的 MacOS,则可以选择对应的版本进行下载升级:

我这里使用的环境版本信息如下,仅供参考:

  • MacOS:13.7.3
  • Xcode:15.2
  • iOS:17.2

部署 WebDriverAgent

拉取 Appium 维护的 Wda 代码即可(facebook的19年已经停止维护了):

sh 复制代码
git clone https://github.com/appium/WebDriverAgent

最新的只需要拉取代码即可,不许在执行脚本操作。

Xcode 配置

1、打开 WebDriverAgent 工程

进入WebDriverAgent根目录,使用 Xcode 打开 WebDriverAgent.xcodeproj 文件

2、Xcode 登录 Apple 开发者账号

选择 Settings

点击下面+号添加账户(这里用个人 Apple 账号也可以)

3、配置证书

选中WebDriverAgentLib,开启自动管理签名

选中WebDriverAgentRunner,像WebDriverAgentLib一样设置证书

如果是个人免费版的证书,还需要修改下WebDriverAgent的BundleID,随便加后缀,不要跟别人重复就好

4、运行测试

Scheme 选择 WebDriverAgentRunner

运行测试 Test

5、iOS 信任证书

个人免费证书会弹一下提示,需要在iOS设备设置下:

  • 进入手机 「设置-> 通用-> VPN与设备管理」 找到对应APP信任下即可
  • 设置完成后重新运行下测试即可成功
6、运行成功
相关推荐
mCell5 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
他们都不看好你,偏偏你最不争气5 小时前
iOS —— 天气预报仿写总结
ios
RPA+AI十二工作室11 小时前
影刀RPA_抖音评价获取_源码解读
运维·机器人·自动化·源码·rpa·影刀
白玉cfc11 小时前
【iOS】网易云仿写
ui·ios·objective-c
fhf13 小时前
2025年了你会卸载Macbook上的应用吗?
macos·shell
RPA+AI十二工作室13 小时前
影刀RPA_Temu关键词取数_源码解读
大数据·自动化·源码·rpa·影刀
归辞...14 小时前
「iOS」——内存五大分区
macos·ios·cocoa
HX43615 小时前
MP - List (not just list)
android·ios·全栈
IT成长日记17 小时前
【自动化运维神器Ansible】Ansible常用模块之File模块详解
运维·自动化·ansible·file·常用模块
穆雄雄17 小时前
备份一下我的 mac mini 的环境变量配置情况
macos