Android 自動化測試——Monkey測試

  Android自帶了不少方便的測試工具和方法,包括咱們經常使用的單元測試、Robotium測試、Monkey測試、MonkeyRunner測試、senevent模擬等。這些方法對於咱們編寫高質量的APP十分有用。也能夠提早暴露咱們程序的隱藏問題。今天給你們講一下Monkey測試,Monkey測試能夠說是我上面提到過的測試方法裏面最簡單的。html

(PS:新建的QQ羣,有興趣能夠加入一塊兒討論:Android羣:322599434)java

  

一、Monkey測試簡介android

  Monkey主要應用在壓力和可靠性測試上,運行該命令能夠隨機地向目標程序發送各類模擬鍵盤事件流,而且能夠本身定義發送的次數,以此觀察被測應用程序的穩定性和可靠性,應用起來也比較簡單,記住那幾個命令就好了。shell

  • Monkey程序由Android系統自帶,使用Java語言寫成,在Android文件系統中的存放路徑是:/system/framework/monkey.jar
  • Monkey.jar程序是由一個名爲「monkey」的Shell腳原本啓動執行,shell腳本在Android文件系統中的存放路徑是:/system/bin/monkey

 

二、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將中止並報錯。
  • 若是應用程序產生了應用程序不響應(application not responding)的錯誤,Monkey將會中止並報錯。

 

 

五、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 

相關文章
相關標籤/搜索