Appium 版本 desktop 1.15.1
Mac OS 版本 cataline 10.15.2
Xcode 版本 13.1
最近需要调试 ios 自动化框架,根据以往老版本的经验,步骤是先安装 appium,我这边同时安装了 appium desktop 1.15.1 版本和 npm 安装了 appium 1.16.0 的版本,下面以 desktop 版本为例
首先常规步骤是:
1.安装 appium, 可以通过以下链接下载:
https://github.com/appium/appium-desktop/releases/tag/v1.15.1
注意:如果安装的是 desktop 版本的 appium 安装如果提示 不能打开软件提示无法打开 “appium”,因为 Apple 无法检查其是否包含恶意软件,则命令行中输入如下:
sudo xattr -rd com.apple.quarantine /Applications/Appium.app
mac os cataline 版本安全限制更严格了,对普通用户来说是件好事,但是对开发者来说增添了很对麻烦

  1. 安装 Carthage 我这里先是通过命令行安装的, brew install carthage 安装好后的版本是 0.31.2 Carthage 可以理解为在 xcodeproject 用来管理和自动下载和安装所有项目所需依赖包的一个工具,作用有点类似于 maven 当然,这里有坑,待会说

3.WDA
很多古老的教程会教你 appium 自带的 WDA 有问题,需要从 facebook 的 git project 上去下载一个进行配置和替换,其实现在新版的 appium 已经不需要,我就用的 appium 自带的 WDA,这个路径的话要看自己电脑了
我的 appium desktop 版本的路径是:/Applications/Appium.app/Contents/Resources/app/node_modules/appium-webdriveragent
appium 命令行启动版本的路径是: /usr/local/lib/node_modules/appium/node_modules/_appium-webdriveragent@2.5.0@appium-webdriveragent
根据你自己的安装路径用 find 搜索一下

然后用
sh ./Scripts/bootstrap.sh -d
这里坑就来了,

找不到可用的 simulator
可能是跟我的最新版的 xcode 有关
随后找到了 Carthage 的 github 看版本 当前我机器上的版本是 0.31.2 brew 安装不指定版本的话就会安装这个 stable 的版本,最新版本是 0.34.0,支持 xcode 10.0+,我是先卸载了当前的版本,然后下载最新版本的 pkg 文件
卸载 carthage: brew uninstall carthage --force
下载最新版本: https://github.com/Carthage/Carthage/releases
安装好后再切换到我 appium 的 WDA 路径下
cd /Applications/Appium.app/Contents/Resources/app/node_modules/appium-webdriveragent
sh ./Scripts/bootstrap.sh -d
现在就不再报错了

4.配置 WDA

用 Xcode 打开 WDA, 这里有 WebDriverAgentLib 和 WebDriverAgentRunner, 在 targets 里找到这两个,打开 Signing & Capabilities,勾选 Automatic manage signing,并选择你的开发者账号,没有用个人账号也可以

改好后还有一个地方,WebAgentRunner 里的 bundle 不能重复,在 Build Setting 里找到 product bundle identifier 随便改一下

然后选好 Scheme 和 Desination

最后选择 Product -> Test,会启动相应的模拟器并在模拟器上安装 WebDriverAgent


在浏览器中输入 127.0.0.1:8100/status,可以看到 status 是 success

如果 destination 需要在机器中按照提示做相应的设置,这里就不多说了,此外还需要用 iproxy 进行一下端口转发:
$ brew install libimobiledevice --HEAD
$ iproxy 8100 8100

  1. 打开 Appium desktop 首先要找到机器的设备号,模拟器可以在 Xcode 中的 Window - > Devices and Simulators 中找到设备的 identifier 真机可以通过命令行 idevice_id -l 获取 得到安装的 app 及其信息,bundle 可以用用以下命令: $ ideviceinstaller -l

在启动的 Appium 中点击右上角的放大镜图标,会进入到 inspector 启动界面, 启动参数如下:


↙↙↙阅读原文可查看相关链接,并与作者交流