monkeyrunner學習淺析-與python的關係

來源:互聯網
上載者:User

最近在學習monkeyrunner,有一點心得,總結出來,純屬個人分析,如果有不準確的地方還請指正

 

關於monkeyrunner的簡介,E文好的盆友可以到官方網站看看介紹,看E文頭疼的盆友就請參見譯言的中文介紹了,翻譯的很準確

http://article.yeeyan.org/view/37503/164523

 

本文想要分析一下monkeyrunner和python之間的關係

對於測試者來說,最先接觸的就是python指令碼,所以第一印象是monkeyrunner是一個python寫的工具,其實不然,monkeyrunner是一個徹頭徹尾的java工具。我們從monkeryrunner的開機檔案ANDROID_SDK_PATH\tools\monkeyrunner.bat中我們可以看出

call %java_exe% -Xmx512m -Djava.ext.dirs=%frameworkdir%;%swt_path% -Dcom.android.monkeyrunner.bindir=..\framework -jar %jarpath% %*

其最終調用的是monkeyrunner.jar。

 

那為什麼不用java直接寫class來測試而要用python指令碼寫測試case呢?

個人觀點----這是我認為非常好的地方,寫class和python指令碼對於測試工程師來說,很明顯python指令碼更容易上手,門檻也低。容易推廣,而且python豐富的第三方庫,也有很好的擴充性。但是目前帶來的問題是debug的問題。因為其執行的順序是monkeyrunner.jar->jython->python script。所以在eclips中,無論我們指定monkeyrunner.jar,還是jython.jar作為指令碼的解譯器,都是無法進行debug調試的。我們只有在jython的解譯器控制台中,逐條的輸入命令來調試,很麻煩,我上一篇文章中列出了外國專家給出的一種設定方法,經證實只在ubuntu上生效,有人說在windows上也可以,但是我在windows
7上一直都不行。

對於簡單的指令碼我們可以這麼調試,但是指令碼複雜後, 這樣調試的確還是很不方便,期待android 4.0推出之後能有一個大的進步

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.