- 安裝Xcode
- 安裝Homebrew,它是一個macOS上的軟件包管理工具,便於下載軟件包。打開終端,運行:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 安裝Nodejs和npm: brew install npm。運行node -v和npm -v確保安裝成功
- 安裝cnpm。由於npm源在國外,使用npm安裝庫時會比較慢,可以使用taobao的鏡像源:
npm install -g cnpm --registry=https://registry.npm.taobao.org
- 安裝Appium依賴庫libimobiledevice,如果沒有安裝會導致Appium無法連接到iOS的設備,所以必須要安裝:
brew install libimobiledevice --HEAD
- 如果要在iOS10+的系統上使用Appium,需要安裝ios-deploy:
npm install -g ios-deploy
- 對真機需要安裝xcpretty:
gem install xcpretty
- 安裝appium-doctor:
npm install appium-doctor -g
appium-doctor --ios
- 安裝Appium:
cnpm install -g appium
Appium在iOS 真機上的自動化測試過程是:在Mac電腦上連接真機iPhone,運行WebDriverAgentRunner,會在Mac端啓動WDA服務器,並在手機iPhone端安裝一個WebDriverAgentRunner應用。通過編寫腳本來與WDA服務器通信,告訴WDA服務器想要如何操作iPhone,WDA服務器與安裝在手機iPhone端的WebDriverAgentRunner應用通信並通過該app發送模擬指令來實現操作iPhone手機。所以要真機測試還要配置webDriverAgent。
- 安裝WDA時要通過Carthage下載一些依賴,所以安裝carthage:
brew install carthage
- 下載並編譯webDriverAgent:從github上下載代碼:git clone https://github.com/facebook/WebDriverAgent(官方文檔參考https://github.com/appium/WebDriverAgent)
- 運行
./Scripts/bootstrap.sh
該腳本會使用Carthage下載所有的依賴,使用npm打包響應的js文件。執行完成後,直接雙擊打開WebDriverAgent.xcodeproj文件編譯WebDriverAgent,編譯時要進行簽名,要向ios開發人員要開發者賬號的權限(具體操作是ios開發人員幫忙操作的)。
PS:遇到的坑:
- run WDA的時候要注意在手機設置-通用-描述文件與設備管理中信任WebDriverAgentRunner。WebDriverAgent安裝一次就可以了。如果沒有在iOS設置-通用-描述文件與設備管理中點擊信任會被多次刪掉重裝。
- 真機調試WebView,必須通過ios_webkit_debug_proxy:
安裝:
brew install ios-webkit-debug-proxy
查看是否能夠調起ios-webkit-debug-proxy:
ios_webkit_debug_proxy -c 設備UDID:27753 -d
ios真機要啓動web檢查器:設置—》Safari—》高級—》web檢查器
appium中配置:cap.setCapability("startIWDP",true)