天天看點

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

本文根據 ATX 文檔 - iOS 真機如何安裝 WebDriverAgent 進行實踐

還有以下資料可供參考:

  • https://github.com/openatx/facebook-wda
  • https://github.com/NetEaseGame/ATX
  • https://github.com/facebook/WebDriverAgent

注意:盡量更新Xcode到最新版本,iphone版本大于9.3

Xcode版本:10.1

iphone版本:12.0.1

OS版本:10.13.6

實踐開始

建立一個目錄,從 git 上面下載下傳 WDA 項目代碼到本地

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

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

運作初始化腳本

./Scripts/bootstrap.sh

出現報錯資訊如下:

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

原因:需要

carthage

下載下傳相關的依賴,本機未安裝

解決:通過

brew

下載下傳安裝:

brew install carthage

下載下傳成功後繼續初始化腳本,又出現報錯,日志如下:

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

原因:需要使用

npm

打包響應的 js 檔案,本機未安裝

解決:通過

brew

下載下傳安裝npm(ps:

brew

真是個好東西):

brew install npm

安裝成功後,繼續初始化腳本

./Scripts/bootstrap.sh

媽耶,這回是成功了吧!

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

Xcode相關操作

  • 進入項目路徑,輕按兩下打開

    WebDriverAgent.xcodeproj

    ,打開xcode後按照下方數字序号依次點選,勾選第5項目,彈框内點選

    Enable Automatic

    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • Team 欄添加個人賬戶,選中。
    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • 開啟

    WebDriverAgentRunner

    的簽名設定,更上面操作類似
    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • 個人免費版的證書,還需要修改下

    WebDriverAgent

    BundleID

    ,随便加字尾,不要跟别人重複就好
    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • 菜單欄選擇裝置名
    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • Scheme

    選擇

    WebDriverRunner

    IOS UI自動化測試實踐:pyhton-wda 環境搭建篇
  • 最後運作

    Product

    ->

    Test

    ,輸入電腦密碼,手機上會出現一個無圖示的

    WebDriverAgent

    應用,啟動之後,馬上又傳回到桌面。

實際到這一步我出現了報錯,日志資訊如下:

Verify the Developer App certificate for your account is trusted on your device. Open Settings on Lanzy and navigate to General -> Device Management, then select your Developer App certificate to trust it.

原因:開發者人員程式未受信任

解決:進入手機

設定

->

通用

->

描述檔案與裝置管理

->

點選開發者應用

,信任一下就好了。

重新test一下,會發現控制台界面出現裝置的IP。加上

/status

合成一個url位址,例如

http://10.0.0.1:8100/status

,然後浏覽器打開,如果出現一串JSON輸出,說明WDA安裝成功了。

實際情況是,我到這一步通路這個位址無響應:

原因:部分國行的iphone機器通過IP和端口還不能通路

解決:需要将手機的端口轉發到Mac上

# 使用--HEAD安裝最新版本
$ brew install libimobiledevice --HEAD

# 使用 iproxy --help 可以查到更具體的用法
$ iproxy 8100 8100  
           

這時通過通路

http://localhost:8100/status

,确認WDA是否運作成功,正确通路頁面如下:

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

inspector

是用來檢視UI的圖層,友善編寫測試腳本,位址是:

http://localhost:8100/inspector

,就長這個樣子~

IOS UI自動化測試實踐:pyhton-wda 環境搭建篇

WDA到這裡就搭建完成啦~接下來還需要安裝wda的用戶端:

pip install --pre facebook-wda

如果報錯,停止

iproxy 8100 8100

,再繼續安裝。。。

iOS