1. 程式人生 > 其它 >Appium+ios環境搭建

Appium+ios環境搭建

appium 環境搭建

  • 安裝homebrew(Mac OSX上的軟體包管理工具)
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 安裝libimobiledevice(一個跨平臺的軟體庫,支援 iPhone®, iPod Touch®, iPad® and Apple TV® 等裝置的通訊協議)
$ brew install libimobiledevice --HEAD
  • 安裝carthage([使用Swift 語言編寫,只支援動態框架,只支援 iOS8+的Cocoa依賴管理工具)
$ brew install carthage
  • 安裝node
$ brew install node
  • 安裝npm(NodeJS包管理和分發工具)
$ brew install npm
  • 安裝cnpm(國內直接用npm下載安裝會有好多網路問題,安裝淘寶的cnpm要比npm好用)
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 安裝ios-deploy(一個使用命令列安裝ios app到連線的裝置的工具)
$ cnpm install -g ios-deploy
  • 安裝xcpretty(用於對xcodebuild的輸出進行格式化)
$ gem install xcprett
  • 安裝appium-desktop

  • 安裝時遇到的一些問題

    • 報錯command line tools: gradle is uninstalled的解決辦法:brew install gradle
    • xcodebuild failed with code 65的解決辦法:這個問題是webdriveragent
      檔案不相容導致的,下載一個相容的(https://github.com/facebookarchive/WebDriverAgent),替換一下這個檔案,code65的問題就解決了。新版的appium-desktop的webdriveragent已經可以直接編譯使用了,建議更新appium版本

WebDriverAgent編譯

  • 使用xcode開啟WebDriverAgent.xcodeproj(/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj)
  • build時需要指定一個Development team,可以用個人Apple ID賬號,生成個人證書和team(在Xcode->Preferences->Account中配置),也可以讓開發團隊的同事給你新增一個賬號
  • PROJECT->WebDriverAgent、TARGETS->WebDriverAgentLib->General->Identity,Bundle Identifier使用一個新名字
  • PROJECT->WebDriverAgent、TARGETS->WebDriverAgentLib->General->Signing,勾選Automatically manage signingteam選擇上個步驟新添的賬號
  • PROJECT->WebDriverAgent、TARGETS->WebDriverAgentLib->Build settings->Packaging,Product Bundle Identifier使用一個新名字,因為Bundle ID不能重複

 

 

  • PROJECT->WebDriverAgent、TARGETS->WebDriverAgentRunner->General->Signing,勾選Automatically manage signingteam選擇上個步驟新添的賬號
  • PROJECT->WebDriverAgent、TARGETS->WebDriverAgentRunner->Build settings->Packaging,Product Bundle Identifier使用一個新名字

 

 

  • 點選Product->Destination,選擇要測試的手機
  • 點選Product->Scheme,選擇WebDriverAgentRunner
  • 點選Product->Build,編譯工程檔案,手機上出現WebDriverAgent應用表示安裝成功!

編譯時遇到的一些問題

  • 編譯失敗原因1:版本問題 檢視當前xcode版本是否支援appium版本
  • 編譯失敗原因2:檢查上述步驟是否全部修改正確
  • 編譯失敗原因3:重新編譯之前先清除上次編譯失敗的檔案 Product->clean build folder
  • 使用appium啟動app後閃退,然後一直無限迴圈啟動和閃退的問題:導致這個問題的原因是你的WebDriverAgent沒有使用有效的賬號編譯,所以每次啟動app後,app會強制關閉,appium判斷WebDriverAgent狀態為關閉又會再次啟動,app再次關閉。。。。因此無限迴圈。解決辦法是解除安裝手機上的WebDriverAgent,使用有效的賬號進行編譯即可。
  • 點選Product->Destination,選擇要測試的手機
  • 點選Product->Scheme,選擇WebDriverAgentRunner
  • 點選Product->Build,編譯工程檔案,手機上出現WebDriverAgent應用表示安裝成功!

編譯時遇到的一些問題

  • 編譯失敗原因1:版本問題 檢視當前xcode版本是否支援appium版本
  • 編譯失敗原因2:檢查上述步驟是否全部修改正確
  • 編譯失敗原因3:重新編譯之前先清除上次編譯失敗的檔案 Product->clean build folder
  • 使用appium啟動app後閃退,然後一直無限迴圈啟動和閃退的問題:導致這個問題的原因是你的WebDriverAgent沒有使用有效的賬號編譯,所以每次啟動app後,app會強制關閉,appium判斷WebDriverAgent狀態為關閉又會再次啟動,app再次關閉。。。。因此無限迴圈。解決辦法是解除安裝手機上的WebDriverAgent,使用有效的賬號進行編譯即可。