花了幾天時間去網上找了各種安裝資料,遇到了很多問題,因為有些教程可能比較舊了,還有就是有些不太符合自己的實際情況。在這里記錄下我的配置過程。
一、準備工作
1.xcode ? 直接從appstore下載的最新版。
2.安裝homebrew、carthage、node、npm:
? ??可參考iOS自動化測試:mac下iOS10 appium測試環境的搭建 - 簡書?的1-8步
? ?※這里因為npm好像國內的網速不是很好可能需要梯子,所以推薦安裝cnpm。
? ?※安裝完一定要記得使用檢查版本的命令檢查下版本,確定是否安裝成功。
3.安裝java、安卓SDK(配置環境變量)
? ? java ? 百度一下就可以
? ?安卓SDK安裝 ? 可參考How to Install Android SDK and Get Started
? ?※java和安卓都需要配置下環境變量。
? ?※參考的鏈接里安裝的是Android Studio IDE開發工具然后自帶了安卓SDK,比較方便。
4.使用cnpm安裝appium、appium-doctor、appium下載依賴
? ?參考iOS自動化測試:mac下iOS10 appium測試環境的搭建 - 簡書?的9-11步。
? ?※這里我走走了很多坑,按照網上其他的教程有的推薦從git下載到本地然后進入目錄使用npm安裝
? ?總是會卡主沒成功過。最后看到這個教程里面的使用cnpm直接安裝就是git上的最新版,超好用? ? ? ? ? ???!安裝完之后記得使用appium -v檢查下版本,如果出現版本則說明appium安裝成功了。
? ?※使用appium-doctor檢查下appium的環境是否有問題。
二、安裝appium桌面客戶端
? ? 下載地址:Releases · appium/appium-desktop · GitHub
? ? 沒啥其余要特殊做的
三、替換appium.app中的WebDriverAgent(敲黑板)
? ? ?網上說由于appium自帶的WebDriverAgent 有缺陷,所以我也一樣換成了facebook? ? ? 的?WebDriverAgent
? ? 下載鏈接GitHub - facebook/WebDriverAgent: A WebDriver server for iOS that runs inside the Simulator.
※要注意的地方:隨便把下載的WebDriverAgent放到哪里,但是一定不要放在需要權限的路徑里面?。。?!
?使用終端cd到你存放WebDriverAgent的目錄下,使用下面命令下載依賴
./Scripts/bootstrap.sh
這個過程如果卡主可能會需要梯子(我是架了),如果沒辦法架梯子可以多試著反復安裝幾次。。聽天由命了。
? 把下載好依賴的WebDriverAgent整個文件夾 替換appium應用包路徑下面WebDriverAgent文件夾
我的路徑是這個
/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent
四、真機安裝WebDriverAgent(敲黑板)
? ? 我的情況是這樣的,沒有開發者賬號,只有.p12和.mobileprovision。
? ? 如果有開發者賬號的小朋友可參考普通的教程ATX 文檔 - iOS 真機如何安裝 WebDriverAgent · TesterHome
下面來記錄下我的配置方法:
1.將.p12導入到mac的鑰匙串
2.點擊剛替換好的WebDriverAgent文件夾下面的WebDriverAgent.xcodeproj文件
3.把你的手機連到電腦上
參考ATX 文檔 - iOS 真機如何安裝 WebDriverAgent · TesterHome的 運行與測試部分
手機上就會出來WebDriverAgent應用了,一個沒有icon的app
這時候控制臺就會打印出手機的ip和端口
? ios10以下版本可以直接用瀏覽器訪問 ip+status/查看狀態:
例如:http://10.0.0.1:8100/status
? ios10以上版本需要通過mac轉發一下再去訪問
# 使用--HEAD安裝最新版本
$ brew install libimobiledevice --HEAD
$ iproxy 8100 8100
? 上面確認沒問題有正確正常的接口返回之后使用下面的接口來訪問ui,查看各個控件的屬性
http://10.0.0.1:8100/inspector?? ios10以下,沒轉發的
http://localhost:8100/inspector??ios10以上,有轉發的
五、啟動appium客戶端
參考AppiumDesktop用法(力求詳盡深入,后期可能會更新) - 簡書
填寫參數時要注意的是大小寫!??!
因為鏈接手機需要啟動app嘛,所以填寫參數的時候要選擇一個要啟動的app。
使用bundleId或者app都行。我用的是bundleId
然后就可以開始你的自動化測試之旅啦