Android自動化測試架構

來源:互聯網
上載者:User

標籤:

    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

從上述資料來看,Android提供的測試載入器各有優缺點,有的支援WebView測試,有的不支援。有的支援跨應用,有的不支援。因此,一個好的Android測試載入器,更多地是相容了上述幾種測試方法。例如,Appium。

UiAutomator Testcase類繼承自JUnit的TestCase類。而Robotium、Espresso則繼承自activityInstrumentationTestCase2。從這個繼承關係,我們也能理解為什麼採用Robotium的方式,應用需要簽名。而採用UiAutomator則不需要。其原因是:採用Robotium的方式,其測試代碼本質上是一個APK。根據Android的安全機制,應用是需要簽名的。

Android自動化測試架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.