1. 程式人生 > >Android Monkey測試入門

Android Monkey測試入門

event 大全 touch touch事件 發送 key left seed 中間

Monkey是一款通過命令行來對我們APP進行測試的工具,可以運行在模擬器裏或真機上。它向系統發送偽隨機的用戶事件流,實現對正應用程序進行壓力測試。

Monkey 參數大全

技術分享圖片

-p <允許的包名列表>

用此參數指定一個或多個包。指定包之後,monkey將只允許系統啟動指定的app。如果不指定包, monkey將允許系統啟動設備中的所有app。

指定一個包:adb shell monkey -p com.shjt.map 100

指定多個包:adb shell monkey -p fishjoy.control.menu –p com.shjt.map 100

-v

用於指定反饋信息級別(信息級別就是日誌的詳細程度),總共分3個級別,分別對應的參數如下 表所示:

Level 0 : adb shell monkey -p com.shjt.map -v 100 // 缺省值,僅提供啟動提示、測試完成和最終結果等少量信息

Level 1 : adb shell monkey -p com.shjt.map -v -v 100 // 提供較為詳細的日誌,包括每個發送到Activity的事件信息

Level 2 : adb shell monkey -p com.shjt.map -v -v -v 100 // 最詳細的日誌,包括了測試中選中/未選中的Activity信息

-s(隨機數種子)

用於指定偽隨機數生成器的seed值,如果seed相同,則兩次Monkey測試所產生的事件序列也相同的。 示例:

monkey測試1:adb shell monkey -p com.shjt.map –s 10 100

monkey測試2:adb shell monkey -p com.shjt.map –s 10 100


--throttle <毫秒>

用於指定用戶操作(即事件)間的時延,單位是毫秒;如果丌指定這個參數,monkey會盡可能快的 生成和發送消息。

示例:adb shell monkey -p com.shjt.map --throttle 3000 100

一、九個事件及百分比控制

1、九個事件

--pct-touch <percent> 0
調整觸摸事件的百分比(觸摸事件是一個down-up事件,它發生在屏幕上的某單一位置)(——點擊事件,涉及down、up)

--pct-motion <percent> 1
調整動作事件的百分比(動作事件由屏幕上某處的一個down事件、一系列的偽隨機事件和一個up事件組成) (——註:move事件,涉及down、up、move三個事件)

--pct-trackball <percent> 2
調整軌跡事件的百分比(軌跡事件由一個或幾個隨機的移動組成,有時還伴隨有點擊)--(軌跡球)

--pct-nav <percent> 3
調整“基本”導航事件的百分比(導航事件由來自方向輸入設備的up/down/left/right組成)

--pct-majornav <percent> 4
調整“主要”導航事件的百分比(這些導航事件通常引發圖形界面中的動作,如:5-way鍵盤的中間按鍵、回退按鍵、菜單按鍵)

--pct-syskeys <percent> 5
調整“系統”按鍵事件的百分比(這些按鍵通常被保留,由系統使用,如Home、Back、Start Call、End Call及音量控制鍵)

--pct-appswitch <percent> 6
調整啟動Activity的百分比。在隨機間隔裏,Monkey將執行一個startActivity()調用,作為最大程度覆蓋包中全部Activity的一種方法。(從一個Activity跳轉到另一個Activity)

--pct-flip <percent> 7
調整“鍵盤翻轉”事件的百分比。

--pct-anyevent <percent> 8
調整其它類型事件的百分比。它包羅了所有其它類型的事件,如:按鍵、其它不常用的設備按鈕、等等。

紅色的數字對應下面百分比對應的數字。比如下圖中0:15.0%,表示分配--pct-touch事件15%。測試100次分配15次測試down-up。

2、百分比控制

如果在monkey參數中不指定上述參數,這些動作都是隨機分配的,9個動作其每個動作分配的百分比之和為100%,我們可以通過添加命令選項來控制每個事件的百分比,進而可以將操作限制在一定的範圍內。

我們先來看一下不加動作百分比控制,系統默認分配事件百分比的情況

命令:adb shell monkey -v -p com.panscarlic.pay 500

指定事件,控制事件百分比

命令:adb shell monkey -v -p com.panscarlic.pay --pct-anyevent 100 500

測試中常用

adb shell monkey –p com.panscarlic.pay –v 1000
adb shell monkey –p com.panscarlic.pay –-throttle 100 –-pct-touch 50 –-pct-motion 50 –v –v 1000 >D:\monkey.txt
adb shell monkey -p com.panscarlic.pay --throttle 380 -v -s 3500 300000 > D:\monkey_log.txt

Android Monkey測試入門