Appium環境準備及IOS真機測試

       本文主要內容:Appium-Server、Appium-Desktop的具體搭建及使用步驟。以及IOS真機測試需要特別注意的方面。


Appium-Server

1、使用node.js編寫

2、命令行版本通過npm安裝

3、官網提供GUI版本appium-desktop使用,內含appium server,最新版本1.2.1。

4、網上許多教程使用的appium.dmg、appium for window.exe是舊版的


Appium-Desktop

1、內含Appium Server,省去安裝它所需要的依賴。

2、對於Android Emulator\Phone、IOS Simulator來說,安裝這個GUI就可以跑代碼了。

3、對於IOS Phone真機測試還需要安裝配置一些工具


Appium-Desktop使用步驟:

1、啓動Appium-Desktop,點擊Start Server v1.6.5,進入命令行界面

2、點擊右上角的Start Inspector Session進入Inspector界面

3、根據自己的手機編輯Desired Capabilities。

4、點擊Start Session連接手機,啓動App並獲取首個界面

5、這裏的Recorder方便錄製簡單的操作代碼,便於入門學習

6、最常用的是這裏可以獲取界面元素的id,accessibilityId等用於編寫測試代碼


IOS真機測試:

1、替換npm爲國內淘寶cnpm

      npm install -g cnpm --registry=https://registry.npm.taobao.org

2、安裝appium-doctor

      cnpm install -g appium-doctor

3、命令行執行appium-doctor,根據錯誤項安裝相應工具並處理

4、安裝command line tools

      xcode-select --install

5、安裝Carthage(IOS依賴管理工具,類似gradle,maven)

      brew install carthage(好久)

6、其他IOS支持庫

      brew install libimobiledevice --HEAD

      cnpm install -g ios-deploy

7、如果WebDriverAgent編譯一直不通過,可嘗試到github替換爲最新的

      https://github.com/facebook/WebDriverAgent.git

本地地址:

/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent

備註:

      WebDriverAgent在IOS設備上實現了一個WebDriver Server,藉助它可以遠程控制IOS設備。允許你啓動銷燬應用,點擊滾動視圖,或確定視圖是否正確展示在屏幕上。

      編譯運行後,會在社別上安裝一個WebDriverAgentRunner的app,以後Appium每次建立Session都會先啓動這個app。這一步問題多多,可以尋求testerhome.com社區幫助。


執行appium-doctor:

info AppiumDoctor Appium Doctor v.1.4.3

info AppiumDoctor ### Diagnostic starting ###

info AppiumDoctor   The Node.js binary was found at: /usr/local/bin/node

info AppiumDoctor   Node version is 8.2.1

info AppiumDoctor   Xcode is installed at: /Applications/Xcode.app/Contents/Developer

info AppiumDoctor   Xcode Command Line Tools are installed.

info AppiumDoctor   DevToolsSecurity is enabled.

info AppiumDoctor   The Authorization DB is set up properly.

info AppiumDoctor   Carthage was found at: /usr/local/Cellar/carthage/0.24.0/bin/carthage

info AppiumDoctor   HOME is set to: /Users/weijiancheng

info AppiumDoctor   ANDROID_HOME is set to: /Users/weijiancheng/Library/Android/sdk

info AppiumDoctor   JAVA_HOME is set to: /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home

info AppiumDoctor   adb exists at: /Users/weijiancheng/Library/Android/sdk/platform-tools/adb

info AppiumDoctor   android exists at: /Users/weijiancheng/Library/Android/sdk/tools/android

info AppiumDoctor   emulator exists at: /Users/weijiancheng/Library/Android/sdk/tools/emulator

info AppiumDoctor   Bin directory of $JAVA_HOME is set

info AppiumDoctor ### Diagnostic completed, no fix needed. ###

info AppiumDoctor

info AppiumDoctor Everything looks good, bye!

info AppiumDoctor


環境變量.bash_profile文件實例:

添加了JAVA_HOME\ANDROID_HOME\CARTHAGE_HOME\MAVEN_HOME及其bin目錄:

------------------------------------------------------------------------------------

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home

export ANDROID_HOME=/Users/weijiancheng/Library/Android/sdk

export PATH=$PATH:$JAVA_HOME/bin

export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools

export PATH=$PATH:/usr/local/bin

export CARTHAGE_HOME=/usr/local/Cellar/carthage/0.24.0

export PATH=$PATH:$CARTHAGE_HOME/bin

export MAVEN_HOME=/Users/weijiancheng/Library/Maven

export PATH=$PATH:$MAVEN_HOME/bin

------------------------------------------------------------------------------------


總結

       剛開始學習appium的時候,Appium-Desktop剛剛推出。網上的教程及社區大都是Appium.exe\Appium.dmg等舊版客戶端的介紹。無一例外的配置麻煩,需要安裝的工具太多了。而我始終堅信的一點是一套成熟的開發工具不應該讓開發者把時間耗在搭建以及配置上。

      官網上默認使用的是Appium-Desktop-x.x.x.dmg。僅僅安裝完這個GUI後,我發現在Android Phone\Emulator,IOS Simulator上都可以正常跑測試用例了。只有IOS Phone真機一直各種提示失敗,於是我認爲一定是自己配置的問題。不過,類似的問題在網上居然找不着。後來實在沒辦法,只能按照舊版的教程,把需要的工具統統安裝一遍才解決。

      我是做Android開發的,對於IOS開發瞭解不深。不知道在IOS設備上安裝ipa遠比Android上安裝apk麻煩得多,以及在IOS模擬器上是不能安裝ipa的。是因爲IOS不能像Android同時兼容兩個CPU架構嗎?

      綜上你需要安裝的是:Appium-Desktop GUI以及IOS真機部署的一系列工具。所以除開IOS真機部署的麻煩,Appium環境部署還是相當簡潔的。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章