Android自帶了不少方便的測試工具和方法,包括咱們經常使用的單元測試、Robotium測試、Monkey測試、MonkeyRunner測試、senevent模擬等。這些方法對於咱們編寫高質量的APP十分有用。也能夠提早暴露咱們程序的隱藏問題。今天給你們講一下Monkey測試,Monkey測試能夠說是我上面提到過的測試方法裏面最簡單的。html
(PS:新建的QQ羣,有興趣能夠加入一塊兒討論:Android羣:322599434)java
一、Monkey測試簡介android
Monkey主要應用在壓力和可靠性測試上,運行該命令能夠隨機地向目標程序發送各類模擬鍵盤事件流,而且能夠本身定義發送的次數,以此觀察被測應用程序的穩定性和可靠性,應用起來也比較簡單,記住那幾個命令就好了。shell
二、Monkey的基本用法app
$ adb shell monkey [options]
若是不指定options,Monkey將以無反饋模式啓動,並把事件任意發送到安裝在目標環境中的所有包。下面是一個常見用法的示例,它啓動指定的應用程序,並向其發送100個僞隨機事件:工具
$ adb shell monkey -p package_name -v 100
三、Monkey測試例子單元測試
上面就是一個使用Monkey測試Launcher的例子,由於對某個APP進行測試的時候,須要指定APP的包名,咱們能夠先進入data\data目錄下面,看看有哪些APP包。測試
四、Monkey測試中止條件spa
Monkey Test執行過程當中在下列三種狀況下會自動中止:.net
五、Monkey詳細參數
下面是Monkey的詳細參數表,圖片是從CSDN一位開發者的博客上截取的。
圖片來源:http://blog.csdn.net/linghu_java/article/details/6732895
六、結語
Monkey測試是Android自動化測試裏面使用比較簡單的方法,能夠很大程度檢驗咱們的程序是否穩定,可否經得起壓力測試,能夠根據實際狀況調整測試的強度和測試重點。這個也是我在開發APP的時候最經常使用的方法,基本上每一個版本發佈以前,我都會進行比較高強度的Monkey測試,就像我每次發佈Launcher以前都會進行1W次Monkey測試。系統集成後,再進行總體的壓力測試。
最後說一句,Monkey測試只是一個模擬測試,不少時候跟實際狀況時有差異的。因此這個只能是其中一個輔助測試,後面有空再講解其餘的自動化測試方法。
2013-8-16
Edited by 泡泡糖
參考網址:http://developer.android.com/tools/help/monkey.html
Edited by mythou
原創博文,轉載請標明出處:http://www.cnblogs.com/mythou/p/3285925.html