2015年8月31日 星期一

Android 自動化壓測工具-Monkey Test (模擬器篇)

大家好久不見~ !!!

話說怎麼最近文章產量這麼少?
其實不然,實在是真的太忙了,之前才剛忙完兩大專案的壓力測試沒多久,緊接著又有其他專案,突然諮詢我們一些關於資訊安全的問題,像是弱點掃描、源碼檢測等等。

幾乎什麼疑難雜症都來尋求我們解答或諮詢,還好本部門各個都是硬底子的「真金」不怕火煉,雖然都快成為名符其實的 Q&A 部門。^^

不過話說回來,之前的一個專案客戶有用一個測 Android Client 的壓測工具「Monkey Test」,這是 Android 原生指令介面的壓測工具。

其實不是很推這一套壓測工具,不是因為要用指令麻煩。而是因為它的測試腳本,完全是隨機沒有固定腳本的亂按。不過這也是有好處的,說不一定在不規則的測試中,可以不經意的測出 Test Case 沒涵蓋到的錯誤。

接下來就言歸正傳,談談我們今天的主角 —Monkey Test,以下是我們這一節的圖解大綱:

Step 1: 下載
請到下列官網下載 Android SDK Tools 或下面的超連結直接下載
https://developer.android.com/sdk/index.html
installer_r24.3.4-windows.exe


接著請到以下連結下載 JDK 6 以上的版本


Step 2: 安裝
在安裝 Android SDK Tools 之前,請先下載和安裝 JDK 6 以上的版本

JDK 6 安裝步驟
點兩下 jdk-8u60-windows-x64.exe 或 jdk-8u60-windows-i586.exe 開始安裝
(請依目前使用作業系統版本,選擇安裝)








最後,按一下 Close 完成安裝。
可以開啟控制台底下的「程式和功能」確認有無安裝成功。

Android SDK Tools 安裝步驟
按兩下 installer_r24.3.4-windows.exe 開始安裝









按下Finish完成安裝,並第一次開啟 Android SDK Tools

Step 3: 環境設定
將 Tools 和 Android 6.0 ~ 4.0.3 版本都打勾安裝




開啟 Android SDK Tools 的 AVD Manager 來增加一台 Android 虛擬機


從 Device Definitions 選擇所要的 Device Template 之後按 Create AVD

選好 CPU 和 Skin 之後按 OK


選取 Device 之後按 Start

請直接按 Launch 開啟模擬器



第一次啟動模擬器

Step 4: 使用方法
開啟 Cmd 執行指令到 C:\Users\使用者帳號\AppData\Local\Android\android-sdk\platform-tools 路徑下

執行指令 adb devices 找到 Device 名稱是 emulator-5554

開始執行 Monkey Test 測試指令
adb -s emulator-5554 shell monkey -v 500

測試過程中,模擬器的畫面會跟著測試而改變

測試完成後 cmd 視窗如下

Step 5: 測試分析
所下的測試指令和參數分析如下:
adb —用程式 adb.exe 呼叫 Monkey Test 做測試
-s emulator-5554 —指定測試模擬器名稱
shell monkey —呼叫 Monkey Test 程式
-v 500 —指定測試 500 個活動

由上圖的測試結果,可以看到總共注入 500 個活動測試,測試時間是 20664 ms,測試結果是 // Monkey finished 完成的

Step 6: 補充說明
如果需要指定測試某個 Package,需加的參數如下:
-p Package Name —例如 -p com.android.browser

Package 列表的指令:adb shell pm list package -f

如果 Monkey Test 測試錯誤,測試報告結果會如下圖:

下一節我們再來介紹 Monkey Test 是如何透過真正的手機做測試的。這一節就先介紹到這裡,我們下次見 ~掰掰!

~ See you ~

參考出處:
http://developer.android.com/
http://www.oracle.com/technetwork/java/javase/downloads/index.html