前言
本章內容為開發人員指南(Dev Guide)/Developing/Tools/monkeyrunner,版本為Android2.3 r1,翻譯轉載並整理自譯言:"biAji",原文地址:"http://article.yeeyan.org/view/37503/164523",再次感謝"bjAji" !期待你一起參與翻譯Android的相關資料,聯絡我over140@gmail.com。
原文
http://developer.android.com/guide/developing/tools/monkeyrunner_concepts.html
本文
monkeyrunner工具提供了一個API,使用此API寫出的程式可以在Android代碼之外控制Android裝置和模擬器。通過monkeyrunner,您可以寫出一個Python程式去安裝一個Android應用程式或測試包,運行它,向它發送類比擊鍵,截取它的使用者介面圖片,並將儲存於工作站上。monkeyrunner工具的主要設計目的是用於測試功能/架構水平上的應用程式和裝置,或用於運行單元測試套件,但您當然也可以將其用於其它目的。
monkeyrunner工具與(UI/Application Exerciser Monkey)用戶介面/應用程式測試載入器,也稱為monkey工具並無關聯。monkey工具直接運行在裝置或模擬器的adb shell中,產生使用者或系統的偽隨機事件流。而monkeyrunner工具則是在工作站上通過API定義的特定命令和事件控制裝置或模擬器。
monkeyrunner工具為Android測試提供了以下特性:
* 多裝置控制:monkeyrunner API可以跨多個裝置或模擬器實施測試套件。您可以在同一時間接上所有的裝置或一次啟動全部模擬器(或統統一起),依據程式依次串連到每一個,然後運行一個或多個測試。您也可以用程式啟動一個配置好的模擬器,運行一個或多個測試,然後關閉模擬器。
* 功能測試: monkeyrunner可以為一個應用自動貫徹一次功能測試。您提供按鍵或觸摸事件的輸入數值,然後觀察輸出結果的截屏。
* 迴歸測試:monkeyrunner可以運行某個應用,並將其結果截屏與既定已知正確的結果截屏相比較,以此測試應用的穩定性。
* 可擴充的自動化:由於monkeyrunner是一個API工具包,您可以基於Python模組和程式開發一整套系統,以此來控制Android裝置。除了使用monkeyrunner API之外,您還可以使用標準的Python html&sa=D&sntz=1&usg=AFQjCNGxDpxs-fdWHno6JjmEGvB3S9XZfQ">os和subprocess模組來調用如Android Debug Bridge這樣的Android工具 。