Mac下appium環境搭建:
環境:macos High Sierra 10.13.4
ios手機:10.3
1.安裝xcode9.3以上版本,這里直接安裝xcode 9.3,下載地址:https://developer.apple.com/download/more/
2.安裝homebrew:
homebrew 簡稱brew,是Mac OSX上的軟件包管理工具,能在Mac中方便的安裝軟件或者卸載軟件,可以說Homebrew就是mac下的apt-get、yum等神器
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
3.安裝libimobiledevice:
libimobiledevice 是一個跨平台的軟件庫,支持 iPhone®, iPod Touch®, iPad® and Apple TV® 等設備的通訊協議。不依賴任何已有的私有庫,不需要越獄。應用軟件可以通過這個開發包輕松訪問設備的文件系統、獲取設備信息,備份和恢復設備,管理 SpringBoard 圖標,管理已安裝應用,獲取通訊錄、日程、備注和書簽等信息,使用 libgpod 同步音樂和視頻。
$ brew install libimobiledevice --HEAD
4.安裝carthage
用於后面webdriveragent依賴安裝
carthage 使用於 Swift 語言編寫,只支持動態框架,只支持 iOS8+的Cocoa依賴管理工具。
$ brew install carthage
5.安裝node
node是安裝npm的前置條件
$ brew install node
6.安裝npm
npm是一個NodeJS包管理和分發工具,已經成為了非官方的發布Node模塊(包)的標准
$ brew install npm
7.安裝cnpm(可以不安裝)
國內直接用npm下載安裝會有好多網絡問題(如果能翻牆,一切都不是問題),安裝淘寶的cnpm要比npm好用,https://npm.taobao.org/
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
8.安裝ios-deploy
ios-deploy是一個使用命令行安裝ios app到連接的設備的工具,原理是根據os x命令行工程調用系統底層函數,獲取連接的設備、查詢/安裝/卸載app
$ cnpm install -g ios-deploy
9.安裝xcpretty
xcpretty是用於對xcodebuild的輸出進行格式化。並包含輸出report功能
$ gem install xcpretty
安裝遇到失敗,可以sudo安裝
10.安裝appium,appium-doctor
$ npm install -g appium
$ npm install -g appium-doctor
11.使用appium-doctor檢查appium環境
$ appium-doctor //appium-doctor --ios 只檢測iOS環境
問題處理:
a.解決appium-doctor無法識別xcode安裝問題
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
b.Xcode Command Line Tools are NOT installed!
$ xcode-select --install #按照提示安裝即可
12.安裝appium-xcuitest-driver依賴
#如果已經安裝,請先卸載
#npm uninstall appium-xcuitest-driver
npm install appium-xcuitest-driver
安裝依賴
$ cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent (如果WebDriverAgent 所在路徑不同,請自行查找)
$ mkdir -p Resources/WebDriverAgent.bundle
$ sh ./Scripts/bootstrap.sh
13.安裝wda到真機測試需要重新編譯:
找到wda安裝路徑:/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/
用xcode打開即可,或直接點擊項目文件,如下
需要修改的點如下:
13.1.WebDriverAgentLib簽名勾選自動,選擇Team可以直接使用個人appid登陸即可,然后修改bundleid不與別人的重名即可,可以隨意加后綴,連接真機,然后點擊編譯,操作步驟沒有問題的話都會成功。
如下位置不出錯即可。
13.2WebDriverAgentRunner也需要修改后編譯成功即可,修改處同上,只有bundleid需要切換到另一個也沒去改,如下圖:
至此環境安裝完成。