iT邦幫忙

1

鼠年全馬鐵人挑戰 WEEK 24:Appium 自動化測試 - 第五集

              Photo on kobiton.com


前言

上週小弟分享完 Windows 搭配 Android 的模擬器
來做 appium desktop session 的啟動說明之後
才發現好像漏了 iOS 的手機操作
iOS 的操作基本上與 Android 一致
差別只在於 session 的設置不同而已

所以這週小弟打算把上 iOS 手機的操作給補上
主要是以 Mac 搭配 iOS 的模擬器
來做 appium desktop session 的啟動說明

本週學習重點

  • 使用 Xcode 啟動一台 iOS 手機模擬器
  • 使用 appium desktop session 啟動 iOS app
  • 使用 appium desktop session 取得元素

啟動 iOS 手機模擬器

首先透過 App Store 來安裝 Xcode

安裝完成後 開啟 Xcode 從上方選單點擊
Xcode > Open Developer Tool > Simulator

透過此方式所開啟的模擬器 預設版本為最新版

如果想要使用特定版本的話 可以從上方選單點擊
Xcode > Preferences > Components
來選擇安裝所需要的特定版本

安裝完成後就可以在啟動模擬器後 從上方選單點擊
File > Open Device > iOS version > device

這樣一來就可以輕鬆啟動不同iOS版本的模擬器了

如果是使用 MacOS 的話 啟動 iOS 手機模擬器較為方便
如果想使用以 Xcode 以外方式開啟模擬器的話
可以參考下面連結文章中介紹的各種模擬器
十大iOS模擬器,用於PC / Mac鏡像iPhone屏幕


Appium Desktop Session

開啟 Inspector Session

點擊 Appium log 頁面中 右上角的 Inspector Session

開啟新視窗後,完成左下角 Desired Capabilities 的設定

  • deviceName
    使用的手機或模擬器類型
    可以透過 $ instruments -s devices 指令獲取
  • udid
    使用的手機或模擬器設備號
    可以透過 $ instruments -s devices 指令獲取
  • platformName
    使用的手機操作系統
    iOS, Android, 或者 FirefoxOS
  • automationName
    自動化測試的引擎,預設為 Appium
    但是這次使用的 iOS 所以要改為 "XCUITest"
  • app
    執行的 iOS 應用程式的路徑位置
    可以是絕對路徑(Path)
    也可以是連結(URL)

下面這一長串是小弟下的 $ instruments -s devices 指令示範
iPhone SE (2nd generation) (13.6) [1AF8DB29-E496-49AE-8F05-96EF25C67FCA] (Simulator)
前面的 iPhone SE (2nd generation) (13.6) 為 deviceName
後面的 1AF8DB29-E496-49AE-8F05-96EF25C67FCA 為 udid

操作 Inspector Session

工具列 (從左至右依序介紹)

  • 選擇元素(Select elements)
    點擊畫面顯示區上的元素 在資訊顯示區可以進一步操作
    點擊(Tap),輸入(Send Keys),清除(Clear)
  • 按座標滑動(Swipe by coordinates)
    分別點擊畫面顯示區上的兩個位置
    點擊完第二個位置後 將會從座標一滑向座標二
  • 點擊座標(Tap by coordinates)
    點擊畫面顯示區上的某一個座標位置
  • 上一頁(Back)
    相當於手機操作中的上一步
  • 重新整理(Refresh source & screenshot)
    重新擷取畫面顯示區並刷新頁面資源
  • 開始錄製(Start recording)
    透過對 Appium 操作的每一個步驟進行紀錄
    並生成各種程式語言的腳本
  • 搜尋元素(Search for element)
    藉由已知訊息找尋當前畫面顯示區上的元素
  • 複製代碼(Copy XML source to clipboard)
    將代碼顯示區中的代碼進行複製
  • 關閉 Inspector Session(Quit Session & Close Inspector)
    結束操作 Inspector Session

結尾

以上是這週的 Appium Desktop Sesstion 的介紹
主要是以 Mac 搭配 iOS 的模擬器來進行操作
而也在這週的內容將 Appium Desktop 告一個段落

在這幾週的分享中介紹了 Mac 與 Windows 的作業系統
搭配了 Android 和 iOS 的真機與模擬器

但是在最後的大總結小弟想說的是
即便成功使用了 Appium Desktop
我們也無法以此替代 Appium
因為 Appium Desktop 只是一個更為方便的圖形化介面
方便取得應用程式中的 Selector

而關於如何使用 Appium 撰寫程式來達到 App 自動化測試
小弟目前任然持續的在積極研究當中

如果有疑問或是有錯誤,還請各位大哥大姐提點。
小弟將繼續往下週邁進。 ─=≡Σ((( つ•̀ω•́)つ


參考文件:

相關文章

相關影片


尚未有邦友留言

立即登入留言