Android App 手機自動化測試會用到的相關工具

Android App 手機自動化測試會用到的相關工具

這篇文章主要說明進行手機自動化測試時,開發測試程式時,相關可以用到的輔助工具有哪些?

 

ScreenCast

https://code.google.com/p/androidscreencast/

https://code.google.com/p/android-screen-monitor/

ScreenCast 主要用在將實體手機畫面投影在電腦上。

 

Chrome Remote Debug

主要用在將手機Chorme瀏覽器的網頁所有 Http Request/Response 轉發一份到電腦的 Chrome。

如何使用? 只要在電腦的 Chorme 輸入下列網址,並且將手機連接到電腦即可。

chrome://inspect/#devices

Chorme 瀏覽器就會出現下列畫面,選擇對應的手機。與需要 inspect 的網頁。

什麼情況下我們會使用這樣的工具呢?

1. 當用手機瀏覽器上網,該網站的手機版本有問題。我們想進一步除錯時。但是手機又不方便除錯,因此透過這樣的方式,可以將手機所有瀏覽行為導到電腦。

2. 當我們要自動化該網頁頁面,我們希望獲取更多該網頁的網頁資訊與 Xpath 等。

需要額外安裝嗎? 不需要的。因為 Chrome 內建這樣的功能!

 

 

Remote Control Android device

https://www.teamviewer.com/en/products/mobile-device-support.aspx

這個工具主要用在當我們將實體手機接在特定電腦時,如何遠端從另一台電腦觀察該手機的狀況?

當團隊有部分手機是連接在測試電腦上,讓許多人共用存取時,就可以用這樣的工具。

這個工具必須安裝在電腦與手機上。

 

Monitor in Android SDK

這個工具為 Android SDK 內建的工具。通常用來除錯或是觀察 android 系統狀況。 \sdk\tools\monitor.bat

筆者要強調一個工具在自動化測試很有幫助。”Dump View Hierarchy for UI automator”

 

 UI Automator Viewer

這個工具通常在 \sdk\tools\uiautomatorviewer.bat

針對Native App 手機應用程式的元件定位就會利用這個工具

例如,下面這個手機應用程式, start 的按鈕,所對應的 Resource-id 我們可以透過這個方式得知。

自動化測試就可以 findElementByID ,透過 ID 點擊到該 Start 按鈕。

另外,我們也可以透過這個方式得知 Package Name

uiAutomator

AppInfo

手機自動化測試啟動時需要該手機應用程式的 Package Name 與啟動的 Activity Name。

要如何得知這兩個資訊呢? 有兩個方法.

方法一:直接在手機上安裝 appInfo 應用程式。AppInfo 會掃描所有手機的應用程式,並且列出我們需要的資訊。可另外參考這篇: http://www.qa-knowhow.com/?p=2615

因為類似的app 很多,筆者比較建議這個 “Apk Information_free”。

方法二:安裝 MoboMarket在電腦桌機。之後將手機連線到電腦。利用MoboMarket的工具將特定手機內安裝的App取出。

方法三:透過 adb 指令。原則上是將該 App 取出存放在電腦,必且用 7zip 查看 APK檔案內容。 Manifest.xml 就會有我們所需要的資訊。

  • adb shell pm list packages
  • adb shell pm path <com.example.someapp>
  • adb pull </data/app/com.example.someapp-2.apk>

MoboMarket for PC

這個工具可以讓我們很方便的在電腦上”管理” Android 手機。

包含利用鍵盤的方式就可以傳輸簡訊、管理聯絡人、備份特定 app,或是將特定app的APK取出另存檔案等。

另外還有 ScreenCast的功能可以將手機螢幕顯示在電腦上。

http://www.mobomarket.net/forpc.htm

MoboMarket For PC

clip_image003

 

 

GenyMotion

 https://www.genymotion.com

這邊介紹另一個工具,這個工具主要取代 android Emulator。

Android Emulator 最大的缺點就是”慢”

這個工具 GenyMotion透過 VirtualBox 的方式,免費版加上”快”!!

安裝完後會在VirtualBox啟動一個 android Emulator的虛擬機器,

與AndroidSDK所提供的Android Emulator 差異在於速度”快”。

 

 

Leave a Reply

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