Android的monkey測試

來源:互聯網
上載者:User

       Android SDK中的android調試橋(adb)shell裡,有一個用於測試的工具——monkey。不知道最早monkey這個名字的來曆,不過他確實如同一隻調皮的猴子,在android app裡各種亂按、亂晃、亂摸。

    如何使用:進入命令列,來到android SDK的platform-tools目錄下,輸入命令

          user@user:~/workspace/android-sdk-linux_x86/platform-tools$   adb shell monkey   

    即可查看到monkey工具的配置參數的用法。如下:

     usage: monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...]
              [-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...]
              [--ignore-crashes] [--ignore-timeouts]
              [--ignore-security-exceptions]
              [--monitor-native-crashes] [--ignore-native-crashes]
              [--kill-process-after-error] [--hprof]
              [--pct-touch PERCENT] [--pct-motion PERCENT]
              [--pct-trackball PERCENT] [--pct-syskeys PERCENT]
              [--pct-nav PERCENT] [--pct-majornav PERCENT]
              [--pct-appswitch PERCENT] [--pct-flip PERCENT]
              [--pct-anyevent PERCENT]
              [--pkg-blacklist-file PACKAGE_BLACKLIST_FILE]
              [--pkg-whitelist-file PACKAGE_WHITELIST_FILE]
              [--wait-dbg] [--dbg-no-events]
              [--setup scriptfile] [-f scriptfile [-f scriptfile] ...]
              [--port port]
              [-s SEED] [-v [-v] ...]
              [--throttle MILLISEC] [--randomize-throttle]
              COUNT

        在執行操作命令前,可以鍵入

       
user@user:~/workspace/android-sdk-linux_x86/platform-tools$  adb shell   

        如此,便進入了adb shell ,可以直接輸入monkey 來執行命令。否則,每次都需要輸入adb shell monkey 進行操作。

  
實戰

1. just for fun

最簡單的入手方法是:

        adb shell monkey -p com.snake -v 100  

      表示對 -p 後的軟體包的app  進行100 次完全隨機的測試。 monkey會隨機的產生100次事件。

      輸出中將依次列出所產生的隨機事件。

2.針對性測試

      當然,不用app有不同的側重點,我們需要測試的重心也就不一樣,這時候,我們或許需要調整隨機事件中不同事件的比例。

--pct就是這個用處。比如:" --pct-touch 50 % " 表示產生的隨機事件中觸摸事件佔有50%  ,而" --pct-syskeys 10% "則表示產生的隨機事件中按鍵事件佔10%。

3. 調試分析

      隨著測試的深入,我們需要忽略app的崩潰,而不是停住,monkey同樣能做到。

             --ignore-crashes

    甚至,它還能產生profiling報告!

            --hprof

    還有更多的調試功能,見下表

    該表對monkey 的用法做了較清晰而翔實的描述。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.