第二篇 Mac配置Appium環境連接ios真機


開始之前,吐槽一下,配置IOS環境真的是太難搞了,整了兩天,試了各種可能,最開始整的appium1.14.0版本,各種失敗,各種問題,最后嘗試appium1.15.1,問題少了點,但是在配置webdriveragent又是各種坑,還好最后都解決了。為了你不再采坑,特此將安裝過程中整理的都分享給你,以及解決辦法。
appium1.15.1 desktop版本已經下載了,去這里拿吧。
https://www.cnblogs.com/victorm/p/12778422.html

一. 基礎環境安裝

開始安裝之前先把jdk安裝,並配置好環境變量。這個自行解決。

1、安裝homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

或者采用下面的方式安裝國內源

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

2、安裝node.js、npm、cnpm
注意不要下載node安裝包去安裝,用brew的方式安裝長期支持版本,如果是通過安裝包安裝的,后續你會遇到非常頭疼的權限問題。
同時appium官網也說了不要以sudo方式安裝

brew install node@12 -- 以這種方式安裝是普通用戶安裝方式
node -v  # 查看node版本 v12.16.2, 這是LTS版本

因為npm直接安裝會比較慢,國內可以通過cnpm來提高速度,但是經過嘗試,會有問題,有可能是我安裝過程中整理亂了,你可以嘗試一下。
最后我是通過npm直接來安裝的,也不會很慢。反正appium-desktop 版本也給你了。

npm -g install cnpm
# 或者
npm install cnpm -g --registry=https://registry.npm.taobao.org  # 官方推薦安裝方法

3、因為國外源特慢了,替換為清華大學開源軟件鏡像站
參考:https://mirror.tuna.tsinghua.edu.cn/help/homebrew/

# brew 程序本身,Homebrew/Linuxbrew 相同
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git

# 以下針對 mac OS 系統上的 Homebrew
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
git -C "$(brew --repo homebrew/cask-fonts)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask-fonts.git
git -C "$(brew --repo homebrew/cask-drivers)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask-drivers.git

# 以下針對 Linux 系統上的 Linuxbrew
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/linuxbrew-core.git

# 更換后測試工作是否正常
brew update

4、安裝:libimobiledevice、carthage、xcpretty

brew install libimobiledevice --HEAD  # 真機測試必須安裝,否則比如 idevice_id -l等命令是執行不了的
brew install carthage
gem install xcpretty

5、安裝:deploy

npm install -g ios-deploy

6、安裝:appium server端

    #cnpm是國內
cnpm -g install appium@1.15.1 
    #不行的話則使用
npm -g install appium@1.15.1  #還是推薦用這種方式安裝,雖然慢點但是不易出錯

7、安裝:appium-desktop - 可選的,用網盤里的包直接裝就行
8、安裝:appium doctor

npm install -g appium-doctor

9、運行appium-doctor檢測環境配置

appium-doctor --ios

10、安裝:Appium-Python-Client

pip install Appium-Python-Client

二. 配置webdriveragent

吐槽:最開始安裝了appium Server后,就自帶appium-webdriveragent,我是在這里直接配置的,然后一路的不順利,也不順心,最后查看官網,想着它既然是個組件,能不能獨立運行,然后就從appium官網克隆了一個到本地,修改,最后配置成功了,也忒順利,哈哈,完事后直接用配置好的替換掉appium自帶的appium-webdriveragent。

1、先克隆一個到自己本地

cd 到自己的一個任意目錄
git clone https://github.com/appium/WebDriverAgent.git

想着有些人沒裝git,在網盤里也傳了一份,見上面的連接 WebDriverAgent-master.zip

2、配置webdriveragent依賴項

#1. 進入上面克隆的webdriveragent的目錄
#下面是我的路徑
cd /Users/qiaoersun/Downloads/WebDriverAgent-master 

#2. 執行下面的命令配置webdriveragent依賴項
./Scripts/bootstrap.sh

3、在xcode里配置 webdriveragent
3.1、配置WebDriverAgentLib
/Users/qiaoersun/Downloads/WebDriverAgent-master目錄下面以xcode方式打開WebDriverAgent.xcodeproj

注意注意:側邊欄一定要打開,配置的是TARGETS里的哦,最開始我自己就弄錯了


Team之前已經添加過個人賬號了,這里就不添加了,沒有添加過的時候,選擇 add account一步步添加,添加完成后選擇它。
添加之后的賬戶可以在 Xcode->perferences->account,出現下面的界面,能看到自己的賬號信息

3.2、配置WebDriverAgentRunner
(1)簽名設置為自動加簽

上面的報錯,解決:請進入WebDriverAgentRunner -> Build Settings設置中,找到Packaging中的選項,將其內容修改為唯一識別的字符串就不報錯了,如下圖所示:

(2)編譯 WebDriverAgentRunner
接下來選擇 iOS 設備,通過 USB 連接 Mac 和 iPhone 后,Xcode 中點擊 1,下 拉框里選擇你的設備

點擊 1,下拉框里選擇 WebDriverAgentRunner
點擊 2,執行編譯,編譯成功會提示 Build Succeeded

(3)運行test
這是test模式,不能run,即一定要執行product>Test 才可以校驗第三步),

運行后提示編譯成功,這時候會報錯,去IOS設備:
設置->通用->描述文件與設備管理,操作信任,然后你就會在IOS設備上看見 WebDriverAgent的icon啦。

3.3 WDA安裝校驗(前提是project>Test 運行的,如上圖所示)
(1) 瀏覽器輸入url
復制url到輸入在瀏覽器中,就會發現網頁上顯示出你的手機界,但是有些iPhone,據說是國產的原因,直接使用ip不能連接手機,需要進行端口轉發(在終端執行 “iproxy 8300 8100” 回車后在瀏覽器中輸入http://localhost:8300/出現json字符串即表示成功,同時說明WDA安裝成功了)。

#開啟iproxy 進行端口轉發
iproxy 8300 8100


(2)地址后面添加/status可以查看當前設備的狀態,獲取與wda通信session id

(3)地址后添加/inspector即可打開WDA 的inspector (非Appium inspector),查看元素:http://localhost:8300/inspector ,點擊下圖中“home”后手機屏幕會切回到主屏幕。至此安裝WDA以及連接IOS手機成功!!---這是網上的資料

我出來的是下面的界面,跟上面不一樣

三. 替換appium1.15.1自帶的WebDreiverAgent

雖然WebDreiverAgent是可以獨立運行的,為了方便管理和統一,這里用已經配置好的WebDreiverAgent替換調自帶的。

注意:把克隆的版本文件夾名字重命名為:appium-webdriveragent, 要跟appium自帶的名字一樣。
進入 /usr/local/lib/node_modules/appium/node_modules目錄下,直接把已經配置好的文件全部拷貝到這里,進行替換。

至此,心情算是舒暢多了。也希望能為你節省寫時間,祝好。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM