Monkey與MonkeyRunner之間的區別


為了支持黑盒自動化測試的場景,Android SDK提供了monkey和monkeyrunner兩個測試工具,這兩個測試工具除了名字類似外,還都可以向待測應用發送按鍵等消息,往往容易產生混淆,以下是他倆的不同之處。

1.monkey運行在設備或者模擬器上邊,可以脫離PC運行,其運行時如下圖所示。

                   

而monkeyrunner運行在PC上,需要通過服務器/客戶端的的模式向設備或者模擬器上的android應用發送指令來執行測試,其運行時如下圖所示。

2.普遍的做法是將monkey作為一個向待測應用發送隨機按鍵消息的測試工具,驗證待測應用在這些隨機性的輸入面前是否會有閃退或者崩潰。而monkeyrunner則接受一個明確的測試腳本(使用python語言編寫的)。

3.雖然monkey也可以根據一個指定的命令腳本發送按鍵消息,但其不支持條件判斷,也不支持讀取界面的信息來執行驗證操作。而monkeyrunner的測試腳本中有明確 的條件判斷等語句,可用來做功能測試。

 總結:

  實際操作中,monkey由於缺少必要的條件判斷等命令,難以在功能測試上有所作為,只能作為生成一些隨機事件的工具,測試應用程序的健壯程度,待測應用崩潰后可以根據monkey打印的日志,再用monkey創建一個重現步驟,供開發調試。monkey服務器模式更適合用於黑盒測試,不建議用於自動化測試。

  而Monkeyrunner雖然有Python和Java類庫的強大支持,但其自身提供的API有限,還得需要插件擴展其功能。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM