安裝配置Appium環境
安裝appium
安裝appium有兩種方式,一種是通過命令行終端方式,一種是Appium Desktop。這里推薦使用Appium Desktop方式,只需下載下來安裝就可以啦。Appium Desktop下載
安裝驅動
根據被測應用平台選擇不同的驅動,這里在Xcode9上測試iOS,選擇XCUITest Driver。這是實現自動化測試很重要的一步。驅動其實也集成在了Appium Desktop中,不需單獨安裝,但運行環境需要搭好。
1.iOS設備系統必須是iOS9.3及以上
2.macOS系統必須是10.11或10.12
3.Xcode版本為Xcode8及以上
4.Appium版本為1.6及以上
5.安裝所需依賴庫,包括:a.node (brew install node)
b.npm (brew install npm)
c.carthage (brew install carthage)
d.libimobiledevice(真機測試需要)(brew install libimobiledevice)
e.ios-deploy(真機測試需要)(brew install ios-deploy)
確定所有依賴是否安裝成功,可通過appium-doctor驗證,首先安裝appium-doctor(npm install -g appium-doctor),然后在終端運行appium-doctor,如圖所示,都是打鈎狀態就證明環境正常(java相關環境不需要配置。
更新Appium中的WebDriverAgent
網上很多是到WebDriverAgent下載最新版本的WebDriverAgent,然后配置替換Appium路徑下的WebDriverAgent(/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/),但真機測試一啟動導致App反復重啟。
這里是不用替換,直接用appium自帶的WebDriverAgent,進行相關配置即可。
- cd 進入appium的WebDriverAgent文件,路徑:(/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/)
- 執行 ./Scripts/bootstrap.sh
- 直接用Xcode打開WebDriverAgent.xcodepro文件
- 配置WebDriverAgentLib和WebDriverAgentRunner的證書
- 連接並選擇自己的iOS設備,然后按Cmd+U,或是點擊Product->Test
- 運行成功時,在Xcode控制台應該可以打印出一個Ip地址和端口號
- 在網址上輸入http://192.168.2.101:8100/status,如果網頁顯示了一些json格式的數據,說明運行成功。
最后一步這里在電腦瀏覽器訪問真機ip時,一直報超時。在網上找到了答案,說國產機通過手機的IP和端口還不能訪問,此時需要將手機的端口轉發到Mac上。
安裝iproxy工具,用法非常簡單 iproxy
[udid]。端口轉發后,瀏覽器訪問 http://localhost:8100/status會看到一個json字符串,即說明WebDriverAgent安裝成功。
![]()
啟動Appium Desktop,開始測試!
-
運行Appium-Desktop
-
開啟start server
-
點擊start new session並且在Desired Capabilities 中輸入相關的參數后點擊Start Session
-
運行成功后,會彈出一個控制界面,在該界面中可以控制手機上正在運行的程序
利用Appium-Python-Client進行iOS的自動化測試
1.首先在終端安裝,python install Appium-Python-Client,如果是python3,就用python3 install Appium-Python-Client
2.在git上下載測試文件測試demo
3.用下載的demo配置好證書,直接安裝到手機上
4.找到demo下文件下的appiumSimpleDemo.py,編輯里面的參數udid,和bundleid,里面的app參數如果已經把demo安裝到手機的話,可以注釋掉;省得去編譯測試demo;
5.執行demo下文件下的appiumSimpleDemo.py,終端執行python appiumSimpleDemo.py(或python3 appiumSimpleDemo.py),就可以看到真機開始自動執行測試代碼