手機自動化測試 Appium 於 Mac上的環境設定

手機自動化測試 Appium 於 Mac上的環境設定

這篇文章主要說明手機自動化測試Appium在 Mac 上環境的設定。

appium 可以對於 iOS 與 Android 進行自動化測試,測試程式原則上沒有太大差異。

主要是環境準備與工具有一些小差異,因此這篇文章主要說明如何在Mac 上設定相關的自動化測試環境。

(Windows/Android 可以參考這篇Appium手機自動化測試從頭學 –Windows/Android環境安裝篇)

環境需求

  • Mac OS X 10.7 or later
  • Xcode 4.6.3 above
  • Java version 7 or later
  • Homebrew (主要是安裝套件方便)
  • Node and npm (主要是用來啟動 Appium)

環境變數

open ~/.bash_profile

包含下列環境變數設定

export   JAVA_HOME=path/to/the/java/home

export  ANDROID_HOME=path/to/the/android/sdk

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

設定完成後可以在 console 底下執行這個指令測試。

java   –version

安裝 appium 所需環境工具

  • Xcode
  • Homebrew
  • Node and npm

 

Xcode 安裝

https://itunes.apple.com/us/app/xcode/id497799835  > “View in Mac App Store”

Homebrew 安裝

在 Mac console 下,執行下列指令

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”.

如果有安裝成功,可以用下列指令測試

brew    doctor

 

Node 安裝

因為Appium Server 是Node.JS 開發,所以要安裝 Node 。

(Windows 版本因為Appium Server安裝程式已經內建 Node的安裝,所以不需要額外安裝Node)

在 Mac console 下,執行下列指令,即可安裝 Node

brew install node

 

Appium 安裝

npm install –g appium

(安裝Appium 不需要使用 sudo,不然之後會遇到執行權限的問題)

 

下載相關的 JAR 開發套件

iOS simulator

跟 windows android 不同的是 iOS simulator 內建在 Xcode 中,不需要額外建立。

 

Appium GUI Mac

相對於 android 來說 iOS 的 Appium設定相對比較多。

appium Mac GUI

如果是 iOS Native App 或是Native + WebKit (Hybrid App) 的話設定如下。

主要設定 app path 與 simulator + platform

如果要啟動的是實體手機要額外設定 UDID。

iOS appium Settingws

如果是要啟動的是 simulator 中的 Safari browser 的話,設定如下:

如果要啟動的是實體手機要額外設定 UDID。

iOS WebApp Settings

 

 

如何定位 iOS Web App?

我們要怎樣透過 Safari 來幫助自動化測試程式定位網頁元件呢?

在手機的 Safari 上,Settings > Advanced > Web Inspector

用手機的 Safari 例如瀏覽 www.google.com

回到 Mac 桌機上的 Safari,Develop > iOS Simulator

就可以在 Mac 桌機上檢視 iOS 手機 Web 網頁所看到的資訊。再根據這個資訊去定義每個網頁元件的 ID, name or Xpath

舉例來說,可以使用 Inspector 來定位 Search Bar

WebElement searchBar = driver.findElement(By.name(“q”));

iOS web app locator by ID

 

如果是 iOS native App 怎麼找到UI 元件呢?

Android 的話使用 UIAutomatorViewer。

而Mac 則是使用 Appium Inspector。

與 Windows 版本不同的是,Mac 版本的 inspector 是可以支援 record And Replay。

Appium iOS inspector

 

Provisional Profile設定

如果要將 App 安裝到實體的 iOS手機上就需要這個設定。並需要加入 iOS developer program。

將手機連接電腦號,開啟 Xcode設定。

iOS Provisioning

 

 

SafariLauncher

這個工具主要用來在手機上啟動 Safari

https://github.com/snevesbarros/SafariLauncher/archive/master.zip

  • 1. Appium.dmg 右鍵 > Show Package Contents
  • 2. 解壓縮Contents/Resources/node_modules/appium/build/SafariLauncher.zip
  • 3. submodules/SafariLauncher/build/Release-iphoneos 將 SafariLauncher app 置換成我們要測試的 app
  • 4. 壓縮 submodules 並且更改檔名 SafariLauncher

ios-webKit-debug-Proxy

安裝這個套件主要是要建立與 Web View 的連線。透過下列指令安裝即可

brew  insetall  ios-webkit-debug-proxy

 

Leave a Reply

Your email address will not be published. Required fields are marked *