android自動化測試 monkey簡介(1)

2021-06-04 02:36:21 字數 1454 閱讀 5018

什麼是monkey?

monkey 是android sdk 自帶的自動化測試工具,可以執行在模擬器裡或實際裝置中,它向系統傳送隨機的使用者事件流,如按鍵輸入、觸控螢幕輸入、手勢輸入、sensor 事件等, 實現對正在開發的應用程式進行壓力測試。

在android sdk 根目錄下的tools 目錄下可以找到。

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

monkey的特徵

1、測試的物件僅為應用程式包,有一定的侷限性。

2、 monky測試使用的事件流資料流是隨機的,不能進行自定義。

3、可對monkeytest的物件,事件數量,型別,頻率等進行設定。

4、除錯設定

在monkey執行的時候,它生成事件,並把它們發給系統。

2 monkey基本用法

可以通過開發機器上的命令列或指令碼來啟動monkey。由於monkey執行在模擬器/裝置環境中,所以必須用其環境中的shell來進行啟動。可以通過在每條命令前加上adb shell來達到目的,也可以進入shell後直接輸入monkey命令。基本語法如下:

$ adb shell monkey [options]

如果不指定options,monkey將以無反饋模式啟動,並把事件任意傳送到安裝在目標環境中的全部包。下面是乙個更為典型的命令列示例,它啟動指定的應用程式,並向其傳送500個偽隨機事件:

$ adb shell monkey -p packagename -v 500

說明:-p後為包名,乙個-p後接乙個包名,多個包需要多個-p;-v反饋資訊的級別

下面中列出了monkey命令列可用的全部選項。

--help

列出簡單的用法。

-v命令列的每乙個-v將增加反饋資訊的級別。level 0(預設值)除啟動提示、測試完成和最終結果之外,提供較少資訊。level 1提供較為詳細的測試資訊,如逐個傳送到activity的事件。level 2提供更加詳細的設定資訊,如測試中被選中的或未被選中的activity。

1.事件

-p 如果用此引數指定了乙個或幾個包,monkey將只允許系統啟動這些包裡的activity。如果你的應用程式還需要訪問其它包裡的activity(如選擇取乙個聯絡人),那些包也需要在此同時指定。如果不指定任何包,monkey將允許系統啟動全部包裡的activity。要指定多個包,需要使用多個 -p選項,每個-p選項只能用於乙個包。

-c 如果用此引數指定了乙個或幾個類別,monkey將只允許系統啟動被這些類別中的某個類別列出的activity。如果不指定任何類別,monkey將選 擇下列類別中列出的activity: intent.category_launcher或intent.category_monkey。要指定多個類別,需要使用多個-c選項,每個-c選 項只能用於乙個類別。

3.除錯

Android自動化測試框架

1 monkeyrunner 優點 操作最為簡單,可以錄製測試指令碼,視覺化操作 缺點 主要生成座標的自動化操作,移植性不強,功能最為侷限 2 rubotium 主要針對某乙個apk進行自動化測試,apk可以有原始碼,也可以沒有原始碼,功能強大 缺點是針對apk操作,而且需要對apk重新簽名 有工具...

Android自動化測試框架

monkey1是android sdk自帶的測試工具,是乙個命令列工具,可以執行在模擬器裡或實際裝置中。可以執行在模擬器中或者實際裝置中,它向系統傳送偽隨機的使用者事件流 如按鍵輸入,觸控螢幕輸入,手勢輸入等 實現對正在開發的應用程式進行壓力測試。由於測試事件和資料都是隨機的,不能自定義,所以有很大...

自動化測試 web自動化測試

自動化 由機器裝置代替人為完成制定目標的過程 優點 提高工作效率 減少勞動力 產品規格同一標準 批量生產 自動化測試 讓程式代替人為去驗證程式功能的過程,即在預設條件下執行程式系統 流程確定 搭建自動化框架 編寫測試用例,將其轉化為soupui 介面 自動化測試指令碼 執行自動化測試指令碼 輸出執行...