Appium 呕心历程 之 ios 环境搭建

1,008 阅读3分钟

前置

macOS :macOS ventura 13.1 Xcode :14.2 ios :15.4.1

Appium :Appium-Server-GUI-mac-1.22.3-4 Appium-Inspector :Appium-Inspector-mac-2022.11.1

骚操作准备

1、到 github.com/appium/appi… 下载 Appium安装包

2、到 github.com/appium/appi… 下载 Appium-Inspector 安装包

进入主题

Appium 篇

1、进入 /Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent ps:循例说一句:路径根据实际安装而定

2、点击打开:WebDriverAgent.xcodeproj

3、 关键时刻来了~配置!!!!看图说话,不懂就 放弃吧

image.png

image.png

image.png

4、它要来了~

image.png

PS:如果出现 以下报错,莫慌~

“ Cannot link directly with dylib/framework, your binary is not an allowed client of /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/XCTAutomationSupport.framework/XCTAutomationSupport for architecture arm64 ”

google了一圈,解决答案来了~

a、关闭Xcode!

b、进入 /Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium 把 node_modules 文件夹 整个丢垃圾桶

c、打开终端, 然后 慢慢敲cd 直到 到达 ——> /Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium 目录为止 (前面 Appium 安装目录的地址,看清楚哦~)

d、 打开 www.npmjs.com/package/app… ,将右手边的【npm i appium-webdriveragent】 语句复制一下!PS:记住不是git clone 哦

e、 在 终端(第a步的窗口)执行 sudo npm i appium-webdriveragent

f、还有一步很重要!!!! 进入进入 /Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium 文件夹,然后,对着node_modules 文件夹 点击 【显示简介】,看图操作:

image.png

****如果你执行完只一步之后,那恭喜~可以重新在回到 [Appium 篇] 从第一步开始再操作一次吧~****

5、没有出现上述报错情况下,继续,在第4步 操作提示 Build Succeeded 后,执行以下(快捷键:command+u):

image.png

6、哟哟,又出现报错?是不是下图这样的?

image.png

这个时候,莫慌,点击ok 后,拿起手机(Xcode 跑的那台) 然后,进入Settings => General =>Device Management 来信任开发者并允WebDriverAgentRunner应用程序运行

至此,try try !!焦点回到 Xcode 工程,然后 command+u~

7、看看 xcode 是不是有日志了~

image.png

在日志中找到 “**http://ip:8100**” ,把它复制,并拼接:例如 [http://192.168.13.13:8100/status] 在浏览的直接访问看看,是不是出现一串json ? 别太激动, 把IP改为localhost 试试 如[http://localhost:8100/status]

8、(上一操作如果能访问成功,那就没有要看这操作的必要了) 访问失败了?别急着动xcode,让子弹飞会~,看下面: 在终端输入

brew install usbmuxd

安装完成后输入

iproxy 8100 8100

再访问一次 http://localhost:8100/status

访问成功后,可以把 终端 关了~ congratulations!,Appium 配置好了

Appium-Inspector 篇

经历了上述的磨烂,这个就是,看见彩虹的驻扎点!加油!!!

1、看看xcode 的 WebDriverAgentRunner 是否依然在运行?如没运行,你懂得~ command+u 启动一下

2、在应用程序中找到Appium 并打开,运行起来~

image.png

3、再 在应用程序 把 Appium-Inspector 这个货打开,然后安图配置一下:

ios 的配置项

{
  "platformName": "iOS",
  "deviceName": "iphone x",
  "platformVersion": "15.4.1",
  "udid": "udid",#从Finder 点击手机名称,能查看到
  "automationName": "XCUITest",
  "bundleId": "bundleId",#app 的ID,不知道可以问开发
  "xcodeOrgId": "xcodeOrgId",#个人的,可以从 钥匙串 中找到,10位数;企业的 可以进入开发者中心看
  "xcodeSigningId": "iPhone Developer"
}

ps:xcodeOrgId 查阅:

image.png

其他的参数,自己看着改吧,automationName、xcodeSigningId 全国统一的,不用改

4、在 Appium-Inspector 界面,点击Start session 如果出现,"xcodebuild exited with code '65' and signal 'null'" 这异常的情况下,请确认 ,你的 xcodeOrgId填写是否正确

如果是,出现:“Failed to create session. The requested resource could not be found, or a request was received using an HTTP method that is not supported by the mapped resource” 那就把xcode 工程停了,appium 程序停了,Appium-Inspector 关闭;检查一下,手机的Wi-Fi与电脑的是否在同一局域网中

呐,如果上述都尝试了还是不行,就 在Appium-Inspector 把 Remote Path 改成 /wd/hub 再出发

image.png

5、看到下图界面,就恭喜你啦~ ios 环境搭建 搭建完毕

image.png