App自動化測試之Monkey使用場景及常用命令


一、Monkey測試簡介

      Monkey通過模擬用戶觸摸屏幕、滑動Trackball、按鍵等程序來對設備上的程序進行壓力測試,檢測程序多久會發生異常。

        一般異常分為以下三種:無響應(ANR)、奔潰(crash)、閃退。奔潰和閃退的區別在於前者有提示框,而后者沒有,直接跳到系統桌面上。

二、Monkey常用場景命令

      ● 參數:  -p  

        用於約束限制,指定一個或多個包。設置后則系統只啟動指定的APP,不指定包則會啟動系統內的所有APP.

        指定一個包:adb shell monkey -p com.moonbasa 1000

        指定多個包:adb shell monkey -p com.moonbasa -p com.moonbasa.taylorsage 1000

        不指定包:adb shell monkey 1000

        (用monkey模擬1000次隨機用戶事件)

     ● 參數: -S (同一seed值可重復事件序列,方便復現問題。seed值由測試者自由指定)

        用於指定偽隨機數生成器的seed值,如果值相同則2次測試所產生的事件序列也一樣。

        1.adb shell monkey -p com.moonbasa -s 188 100

        2.adb shell monkey -p com.moonbasa -s 188 100

        1,2兩次測試的效果是相同的,因為模擬的用戶操作序列是一樣的。

     ● 參數: -V  

        用於指定反饋信息級別(日志詳細程度),總共分為三個級別

        -V   Level0   缺省值,僅提供啟動提示、測試完成和最終結果等少量信息

        -V  -V  Level1  提供較為詳細的日志,包括每個發送到Activity的事件信息

        -V  -V  -V   Level2  最詳細的日志,包括了測試中選中/未選中的Activity信息

       例:adb shell monkey -p com.moonbasa -v -v 1000.

              (用monkey模擬1000次隨機用戶事件,輸出的日志級別為Level1)

     ● 參數:--throttle <毫秒>

        用於指定用戶操作(事件)間的時延,單位是毫秒

        例:adb shell monkey -p com.moonbasa --throttle 3000  1000

               (用monkey模擬1000次隨機用戶事件,事件之間有3秒的延遲)

     ● 參數:--randomize -throttle

        事件間插入隨機延遲,范圍為0到throttle設置的值 

        例:adb shell monkey -p com.moonbasa --throttle 5000 --randomize -throttle 1000

               (執行1000次的monkey隨機事件,事件間隔0~5秒)

    ● 參數:

--pct-{+事件類別}{+事件類別百分比}

 

 

         參考文獻:https://www.cnblogs.com/bydzhangxiaowei/p/8136491.html

                           https://blog.csdn.net/u011649536/article/details/45043781

    




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM