iOS安裝WebDriverAgent避坑詳解


前言

  • 對iOS真機做自動化測試,需要像連接安卓設備一樣,實時投影、控制手機。
  • 難點在於不同的iOS版本、Xcode版本、WebDriverAgent版本難以一次性部署調試成功。
  • WebDriverAgent應用必須安裝在手機上,才能完成對iOS系統的操作,所以選擇WDA版本很關鍵。

環境

Xcode盡量升級到最新版本,iphone版本盡量大於10:

  • Xcode:13.2.1 (當前2022年3月10日)
  • iOS:14.7.1
  • MacOS:12.2.1
  • Python:3.8.6

部署流程

  1. Mac下載WebDriverAgent,使用Xcode啟動Test
  2. 啟動代理,通過命令執行 iproxy 8100 8100 運行代理后,通過瀏覽器打開 http://127.0.0.1:8100/status ,查看iOS設備是否連接成功。

安裝依賴

WebDriverAgent使用appium修改版,這樣能滿足iOS高版本測試需求

直接在github上下載:https://github.com/appium/WebDriverAgent

或者git clone

git clone https://github.com/appium/WebDriverAgent

iproxy是usbmuxd附帶的一個小工具,它的作用是將設備的某個端口映射到電腦的某個端口。

mac下可以通過brew安裝

brew install usbmuxd

iproxy 8100 8100 意思就是將手機的8100端口,映射到電腦的8100端口上。這樣我們就能通過訪問電腦的8100端口來訪問到手機了。

步驟

參考:https://cloud.tencent.com/developer/article/1864001

安裝Xcode

設置證書

進入WebDriverAgent根目錄,打開WebDriverAgent.xcodeproj文件

在Xcode中的TARGETS里選中WebDriverAgentLib,開啟自動管理簽名

選中WebDriverAgentRunner,像WebDriverAgentLib一樣設置證書

如果是個人免費版的證書,還需要修改下WebDriverAgent的BundleID,隨便加后綴,不要跟別人重復就好

運行測試

分別選擇WebDriverAgentRunner和目標設備

然后點擊Product菜單下的Test,這時候會提示輸入本機電腦的密碼,輸入完成后點擊始終允許即可。


如果是個人免費版證書還會彈出下面的提示:

因為WDA應用沒有被信任,需要進入手機設置-> 通用-> 描述文件與設備管理,點擊開發者APP信任一下就可以了。

然后再次運行Test,就可以在Xcode控制台看到下面的輸出信息:

啟動代理

終端運行命令

iproxy 8100 8100

將手機的8100端口,映射到電腦的8100端口上。這樣我們就能通過訪問電腦的8100端口來訪問到手機了。

查看iOS設備連接狀態

瀏覽器輸入url:http://127.0.0.1:8100/status

通過AirtestIDE連接設備

打開設備窗
在 AirtestIDE 的設備窗口,輸入地址:http://127.0.0.1:8100 或 [http://x.x.x.x(MAC IP):8100](http://x.x.x.x(MAC IP):8100):

點擊Connect按鈕即可連接iOS設備,如圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM