1、monkeyrunner:優點:操作最為簡單,可以錄製測試指令碼,視覺化操作;缺點:主要生成座標的自動化操作,移植性不強,功能最為侷限;
2、rubotium:主要針對某乙個apk進行自動化測試,apk可以有原始碼,也可以沒有原始碼,功能強大;缺點是針對apk操作,而且需要對apk重新簽名(有工具),因此操作相對複雜;
3、uiautomator:優點:可以對所有操作進行自動化,操作簡單;缺點:android版本需要高於4.0,無法根據控制項id操作,相對來說功能較為侷限,但也夠用了;
4、monkey:準確來說,這不算是自動化測試,因為其只能產生隨機的事件,無法按照既定的步驟操作;
由上面介紹可以有這樣的結論:測試某個apk,可以選擇rubotium;測試過程可能涉及多個apk,選擇uiautomator;一些簡單的測試,選擇monkeyrunner;
hierachyview+monkey
uiautomator + monkey
robotium
許可權root
普通普通
是否需要簽名是否
否響應速度
10s(網友測試資料)
4s(網友測試資料)
1-2s
是否支援webview否否
是是否支援跨應用測試是是
否支援該特性的android api
?api 16
api 7
是否支援控制項id是否
是 uiautomator testcase類繼承自junit的testcase類。而robotium、espresso則繼承自activityinstrumentationtestcase2。從這個繼承關係,我們也能理解為什麼採用robotium的方式,應用需要簽名。而採用uiautomator則不需要。其原因是:採用robotium的方式,其測試**本質上是乙個apk。根據android的安全機制,應用是需要簽名的。
Android自動化測試框架
monkey1是android sdk自帶的測試工具,是乙個命令列工具,可以執行在模擬器裡或實際裝置中。可以執行在模擬器中或者實際裝置中,它向系統傳送偽隨機的使用者事件流 如按鍵輸入,觸控螢幕輸入,手勢輸入等 實現對正在開發的應用程式進行壓力測試。由於測試事件和資料都是隨機的,不能自定義,所以有很大...
Android 自動化測試框架對比
出自 android的測試框架,除了需要適合做ui測試,還需要保證選取的框架有以下幾點特性 robotium athrun tmts monkeyrunner uiautomator 實際使用後,發現uiautomator沒有提供測試結果報告,這一點是硬傷啊 不過還是有解決辦法的,把uiautoma...
自動化測試框架
可設計為五層 一 測試用例層 主要存放用例的指令碼,分為主指令碼和子指令碼。主指令碼用來控制各個子指令碼,實現指令碼間的資料傳遞。子指令碼是實現各個功能點的指令碼,同時也會提取出一些共用的方法,一般放在提取層中。主指令碼中可使用資料驅動來控制指令碼實現各種場景的流程,如silktest的test s...