• <td id="ae6ms"><li id="ae6ms"></li></td>
  • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
  • <table id="ae6ms"></table>
  • <td id="ae6ms"></td>
    <td id="ae6ms"></td>
  • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
  • <td id="ae6ms"></td>
  • <table id="ae6ms"><li id="ae6ms"></li></table>
  • <table id="ae6ms"></table>
    西西軟件園多重安全檢測下載網站、值得信賴的軟件下載站!
    軟件
    軟件
    文章
    搜索

    首頁編程開發Android → Android測試命令行工具Monkey使用教程

    Android測試命令行工具Monkey使用教程

    相關軟件相關文章發表評論 來源:西西整理時間:2013/5/24 14:37:34字體大?。?em class="fontsize">A-A+

    作者:西西點擊:39次評論:1次標簽: Monkey

    • 類型:電子教程大?。?i>1.4M語言:中文 評分:6.6
    • 標簽:
    立即下載

    Monkey是什么

    Monkey是可以運行在模擬器里或實際設備中的程序。它向系統發送偽隨機的用戶事件流(如按鍵輸入、觸摸屏輸入、手勢輸入等),實現對正在開發的應用程序進行壓力測試。

    Monkey簡介

    Monkey是一個命令行工具,可以運行在模擬器里或實際設備中。它向系統發送偽隨機的用戶事件流,實現對正在開發的應用程序進行壓力測試。Monkey包括許多選項,它們大致分為四大類:

    · 基本配置選項,如設置嘗試的事件數量。

    · 運行約束選項,如設置只對單獨的一個包進行測試。

    · 事件類型和頻率。

    · 調試選項。

    在Monkey運行的時候,它生成事件,并把它們發給系統。同時,Monkey還對測試中的系統進行監測,對下列三種情況進行特殊處理:

    · 如果限定了Monkey運行在一個或幾個特定的包上,那么它會監測試圖轉到其它包的操作,并對其進行阻止。

    · 如果應用程序崩潰或接收到任何失控異常,Monkey將停止并報錯。

    · 如果應用程序產生了應用程序不響應(application not responding)的錯誤,Monkey將會停止并報錯。

    按照選定的不同級別的反饋信息,在Monkey中還可以看到其執行過程報告和生成的事件。  

    Monkey的基本用法 

    可以通過開發機器上的命令行或腳本來啟動Monkey。由于Monkey運行在模擬器/設備環境中,所以必須用其環境中的shell來進行啟動??梢酝ㄟ^在每條命令前加上adb shell來達到目的,也可以進入Shell后直接輸入Monkey命令?;菊Z法如下:
    $ adb shell monkey [options] 
    如果不指定options,Monkey將以無反饋模式啟動,并把事件任意發送到安裝在目標環境中的全部包。下面是一個更為典型的命令行示例,它啟動指定的應用程序,并向其發送500個偽隨機事件:
    $ adb shell monkey -p your.package.name -v 500 

    命令選項參考 

    CategoryOption描述
    General
    常規
    --help列出簡單的用法。
    -v命令行的每一個-v將增加反饋信息的級別。Level 0(缺省值)除啟動提示、測試完成和最終結果之外,提供較少信息。Level 1提供較為詳細的測試信息,如逐個發送到Activity的事件。Level 2提供更加詳細的設置信息,如測試中被選中的或未被選中的Activity。
    Events
    事件
    -s <seed>偽隨機數生成器的seed值。如果用相同的seed值再次運行Monkey,它將生成相同的事件序列。
    --throttle <milliseconds>在事件之間插入固定延遲。通過這個選項可以減緩Monkey的執行速度。如果不指定該選項,Monkey將不會被延遲,事件將盡可能快地被產成。
    --pct-touch <percent>Adjust percentage of touch events. (Touch events are a down-up event in a single place on the screen.)
    調整觸摸事件的百分比(觸摸事件是一個down-up事件,它發生在屏幕上的某單一位置)。
    --pct-motion <percent>調整動作事件的百分比(動作事件由屏幕上某處的一個down事件、一系列的偽隨機事件和一個up事件組成)。
    --pct-trackball <percent>調整軌跡事件的百分比(軌跡事件由一個或幾個隨機的移動組成,有時還伴隨有點擊)。
    --pct-nav <percent>調整“基本”導航事件的百分比(導航事件由來自方向輸入設備的up/down/left/right組成)。
    --pct-majornav <percent>調整“主要”導航事件的百分比(這些導航事件通常引發圖形界面中的動作,如:5-way鍵盤的中間按鍵、回退按鍵、菜單按鍵)
    --pct-syskeys <percent>調整“系統”按鍵事件的百分比(這些按鍵通常被保留,由系統使用,如Home、Back、Start Call、End Call及音量控制鍵)。
    --pct-appswitch <percent>調整啟動Activity的百分比。在隨機間隔里,Monkey將執行一個startActivity()調用,作為最大程度覆蓋包中全部Activity的一種方法。
    --pct-anyevent <percent>調整其它類型事件的百分比。它包羅了所有其它類型的事件,如:按鍵、其它不常用的設備按鈕、等等。
    Constraints
    約束限制
    -p <allowed-package-name>如果用此參數指定了一個或幾個包,Monkey將只允許系統啟動這些包里的Activity。如果你的應用程序還需要訪問其它包里的Activity(如選擇取一個聯系人),那些包也需要在此同時指定。如果不指定任何包,Monkey將允許系統啟動全部包里的Activity。要指定多個包,需要使用多個 -p選項,每個-p選項只能用于一個包。

    使用Monkey流程

    總的來說使用monkey進行測試是比較簡單的,只是需要做一些比較復雜的準備工作。下面詳解測試步驟(很簡單的哦),所講內容是建立在已經配置好ADB環境的基礎上(如果這部分不清楚請先google一下先配置好環境,這里不做描述)。

    1、ADB連接Android測試設備。

    2、確定你要測試的應用的PackageName。

    3、使用Monkey發一條測試命令。 

    步驟詳解

    步驟確實很簡單吧。不敢保證讀者都明白如何去完成上面的步驟,這里講講每步如何做。

    1、ADB連接Android測試設備。

    如果你用的是模擬器,那么啟動后通常是已經連在ADB上了。對于真機來說兩種方式都可以:

    方式一:使用USB把Android設備接到PC上,然后裝上驅動(不好找驅動的話就用豌豆莢吧)。

    方式二:首先得確保你的Android已經成功root了,那么可以使用wifi無線連接。①下載一個wifi adb應用裝在你的android設備上;②在android上打開wifi adb;③在pc上的命令行中輸入wifi adb中顯示的那部分內容:adb connect 192.168.x.x,命令行中顯示connected 192.168.x.x那么說明連接好了。

    我比較喜歡方式二,這樣可以不用去下載驅動(主要是驅動很多都不穩定),而且不傷害電池。長時間插在USB上對電池始終是不好的。只不過這種方式設備一旦休眠那么就可能需要重連。

    2、確定你要測試的應用的PackageName。

    先說明一下這里講的方法是通用的,而網上其他方法獲取PackageName不然不通用(因為他是建立在root的基礎上的,我不敢保證你的設備已經root)。

    ①在android設備上點擊一下你要測試的設備,然后就不用操作設備了。

    ②在PC上的命令行輸入:adb logcat>D:/log.txt *:I 

    在這里的D:/log.txt你可以改成其他的路徑,但是一定要先確保路徑下沒有這個文件,不然的話你以前的文件就被改掉了,一定要小心。

    ③按下Ctrl+c先停掉(為了避免過多的新信息)。打開剛剛的那個文件D:/log.txt。從文件最下面開始找下面格式的信息

    I/ActivityManager( 數字): Displayed 包名/類名: +數字ms

    例如我的信息如下:

    I/ActivityManager(  272): Displayed com.vane/.act.ActLauncher: +315ms

    不過你可能會發現有很多這種格式的信息,到底哪個才是你需要的呢,如果你嚴格按照剛剛的步驟做的話,那么很可能是最下面那條信息,即使不是那么也肯定是最下面幾條信息中的某一條,這需要你根據應用進行辨別。

    ④記下你剛剛得到的包名,例子中的包名為“com.vane”。馬上就會用。

    3、使用Monkey發一條測試命令。

    這一步就比較簡單了。直接在pc上的命令行輸入:adb shell monkey -p com.vane -v 50

    備注:上面命令中的com.vane就是之前獲得的包名;命令中的參數你可以自己根據需要參考上面的參數文檔進行修改。

    4、觀察android設備,直到Monkey停止。

    5、如果應用崩潰的話就好分析一下Monkey中的信息。

    總結

    Monkey的使用確實比較簡單,但是在測試中確有不小的作用,值得使用。

      相關評論

      閱讀本文后您有什么感想? 已有人給出評價!

      • 8 喜歡喜歡
      • 3 頂
      • 1 難過難過
      • 5 囧
      • 3 圍觀圍觀
      • 2 無聊無聊

      熱門評論

      最新評論

      發表評論 查看所有評論(1)

      昵稱:
      表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
      字數: 0/500 (您的評論需要經過審核才能顯示)
      女人让男人桶30分钟免费视频,女人张开腿让男人桶个爽,一进一出又大又粗爽视频
    • <td id="ae6ms"><li id="ae6ms"></li></td>
    • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
    • <table id="ae6ms"></table>
    • <td id="ae6ms"></td>
      <td id="ae6ms"></td>
    • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
    • <td id="ae6ms"></td>
    • <table id="ae6ms"><li id="ae6ms"></li></table>
    • <table id="ae6ms"></table>