Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android自動測試之Monkey工具

Android自動測試之Monkey工具

編輯:Android開發實例

                                                 Monkey工具

前言: 最近開始研究Android自動化測試方法,對其中的一些工具、方法和框架做了一些簡單的整理,其中包括android測試框架、CTS、Monkey、Monkeyrunner、benchmark、其它test tool等等。因接觸時間很短,很多地方有不足之處,希望能和大家多多交流。
  一、  什麼是Monkey Monkey是Android中的一個命令行工具,可以運行在模擬器裡或實際設備中。它向系統發送偽隨機的用戶事件流(如按鍵輸入、觸摸屏輸入、手勢輸入等),實現對正在開發的應用程序進行壓力測試。Monkey測試是一種為了測試軟件的穩定性、健壯性的快速有效的方法。
  二、 Monkey的特征 1、 測試的對象僅為應用程序包,有一定的局限性。 2、 Monky測試使用的事件流數據流是隨機的,不能進行自定義。 3、 可對MonkeyTest的對象,事件數量,類型,頻率等進行設置。
  三、Monkey的基本用法 基本語法如下: $ adb shell monkey [options] 如果不指定options,Monkey將以無反饋模式啟動,並把事件任意發送到安裝在目標環境中的全部包。下面是一個更為典型的命令行示例,它啟動指定的應用程序,並向其發送500個偽隨機事件: $ adb shell monkey -p your.package.name -v 500
  四、Monkey測試的一個實例 通過這個實例,我們能理解Monkey測試的步驟以及如何知道哪些應用程序能夠用Monkey進行測試。 Windows下(注:2—4步是為了查看我們可以測試哪些應用程序包,可省略): 1、 通過eclipse啟動一個Android的emulator 2、 在命令行中輸入:adb devices查看設備連接情況 C:\Documents and Settings\Administrator>adb devices List of devices attached emulator-5554   device 3、 在有設備連接的前提下,在命令行中輸入:adb shell 進入shell界面 C:\Documents and Settings\Administrator>adb shell # 4、 查看data/data文件夾下的應用程序包。注:我們能測試的應用程序包都在這個目錄下面 C:\Documents and Settings\Administrator>adb shell # ls data/data ls data/data com.google.android.btrouter com.android.providers.telephony com.android.mms com.android.providers.downloads com.android.deskclock com.android.email com.android.providers.media com.android.settings jp.co.omronsoft.openwnn com.android.providers.userdictionary com.android.quicksearchbox com.android.protips com.android.browser com.android.launcher com.android.term com.android.speechrecorder com.android.server.vpn com.android.defcontainer com.svox.pico com.android.customlocale com.android.development com.android.soundrecorder com.android.providers.drm com.android.spare_parts com.android.providers.downloads.ui com.android.fallback com.android.providers.applications com.android.netspeed com.android.wallpaper.livepicker android.tts com.android.htmlviewer com.android.music com.android.certinstaller com.android.inputmethod.pinyin com.android.providers.subscribedfeeds com.android.inputmethod.latin com.android.gallery com.android.systemui com.android.contacts com.android.phone com.android.sdksetup com.android.calculator2 com.android.packageinstaller com.android.camera com.android.providers.settings com.thestore.main com.android.providers.contacts 5、 以com.android.calculator2作為對象進行MonkeyTest #monkey -p com.android.calculator2 -v 500 其中-p表示對象包 –v 表示事件數量 運行過程中,Emulator中的應用程序在不斷地切換畫面。 按照選定的不同級別的反饋信息,在Monkey中還可以看到其執行過程報告和生成的事件。  注:具體參數的設定可參考: http://developer.android.com/guide/developing/tools/monkey.html

五、關於Monkey測試的停止條件 Monkey Test執行過程中在下列三種情況下會自動停止: 1、如果限定了Monkey運行在一個或幾個特定的包上,那麼它會監測試圖轉到其它包的操作,並對其進行阻止。 2、如果應用程序崩潰或接收到任何失控異常,Monkey將停止並報錯。 3、如果應用程序產生了應用程序不響應(application not responding)的錯誤,Monkey將會停止並報錯。 通過多次並且不同設定下的Monkey測試才算它是一個穩定性足夠的程序。 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved