這裡只是記錄分享一下自己的學習心得,希望給一些新手有所啟發,少一點摸索的時間,如有不準確之處,歡迎指出,不勝感激。
android的sdk中整合了三個比較簡單的可用來進行自動化測試的工具:Monkey、MonkeyRunner和Robotium。這三個測試載入器都是基於黑箱測試。Monkey相對而言比較簡單,只是在cmd下寫幾行指令對要測試的程式進行簡單的壓力測試。Robotium測試載入器總共只有一個Solo類,裡面提供了許多可以用來操作測試裝置的方法。MonkeyRunner相對而言,是三個工具中功能最強大的。
MonkeyRunner測試載入器主要是編寫一個Python程式去安裝一個android程式或者測試包,通過類比一些對程式點擊操作的過程,來測試一個程式的穩定性及通過截屏可以方便的記錄出現的問題。
Monkeyrunner工具是使用Jython(使用Java程式設計語言的一種Python實現)寫出來的。Jython允許MonkeyrunnerAPI與Android架構輕鬆的進行互動。至於什麼是Python,大家可以百度一下,是一門很強大的物件導向的程式設計語言,可以跨平台運行。當然,我們使用MonkeyRunner測試載入器,不必要一定先去學習Python語言,我們恐怕在實際工作中也沒有那麼多時間,我們只需要瞭解一些常用的Python編程規範即可。(這些會在後面結合代碼給出)。
現在主要講一下怎麼配置一下一個Monkeyrunner的工作環境。
如果只是簡單使用MonkeyRunner測試載入器的話,就沒有必要像網上說的,下載一個Python版本安裝程式進行安裝,或者在eclipose裡面整合一個python的外掛程式,用來調試Python程式,在eclipse裡面整合外掛程式遠沒有直接使用記事本或者Notepad等編輯工具好用,因為Monkeyrunner總共就只有三個類(MonkeyRunner,MonkeyDevice,MonkeyImage),也沒有那麼多方法,讓你有在eclipse裡寫程式時自動提示什麼的優勢,而有時外掛程式和eclipse版本之間又會出現一些讓你頭疼的問題。所以,只要一個記事本足矣。
言歸正傳,既然是android測試,你肯定是配過android的開發環境了(不會配的可以百度)。android開發免不了要用到android sdk tools下的一些開發工具,你可以在系統內容變數裡面配置一個ANDROID_HOME變數,把你的android SDK 安裝路徑加進去。比如我的路徑是:G:\android03\android-sdk-windows。如果你已經配過了ANDROID_HOME變數,你現在只需要在你的系統變數的PATH變數中,把這句話加進去:%ANDROID_HOME%/tools;其實也就是相當於你把指向到android sdk tools的路徑加到PATH變數中。
添加好之後,你可以直接在cmd下運行:monkeyrunner 命令,斷行符號。如果出現monkeyrunner的版本資訊,就證明你monkeyrunner環境已經配成功了。(如)
有時,你配好之後,會出現NOCLASSDefFound的錯誤.如:
這個是由於你的sdk中缺少了一個ChimpChat.jar檔案, 一個最新的aster 的壓縮包。這個是android系統測試需要用得到運行時環境包,解壓這個壓縮包,可以在以下路徑中找到aster\dist\jar\chimpchat.jar ,然後,把chimpchat.jar複製到你的android sdk 中tools目錄下的bin目錄中,然後再運行monkeyrunner命令即可。
配置好後,就可以在cmd下通過monkeyrunner命令運行你寫的monkeyrunner Python測試檔案。
比如:monkeyrunner e:\test.py.
今天就先寫到這裡。不喜歡熬夜了,大家注意身體哈。
作者:風泊海上