自動化測試框架 hierarchyViewer、Uiautomator、Appium的區別比較!


一、HierarchyViewer:

  優點:1)能夠可視化的角度直觀地獲得UI布局設計結構和各種屬性的信息

     2)使用hierarchyviewer.bat來檢索手機界面布局

  缺點:1)穩定性差,出現過在獲取某些控件時,概率性的會存在獲取不到的情況

     2)性能不好,使用HierarchyViewer功能時進行測試,獲取控件等時的執行效率很低,導致整個測試的時間使用特別長,消耗調試時間

     3)只能用MonkeyImage的SameAs來做截圖對比

     4)資料稀缺,不僅百度,google也是一樣

     5)HierarchyViewer相對應的API,API的提供的方法,沒有uiautomator提供的詳細和多

     6)新手學習起來較難

二、Uiautomator:

  優點:1)可以對所有操作進行自動化,API封裝的較多,使用起來容易理解

     2)可以跨應用測試,Google原生,其穩定性和后續的維護更新可以得到保障,運行時也有更多的權限

     3)可支持eclipse中使用

     4)可以跨進程操作,這點比起其它基於instrumentation框架的自動化工具如Robotium是無法直接做到的

     5)運行速度快

     6)使用的人多,網上搜索資料也較多,遇到的問題基本都能搜索到對應的解決方式

     7)明晰API,提供最靈活精確的控制。UiAutomator框架對外提供的API,主要有UiDevice、UiSelector、UiObject、UiCollection和 UiScrollable等

     8)使用uiautomatorviewer.bat來檢索手機界面視圖

     9)支持的語言可以有python、java等,google推出的底層框架使用java編寫的,但是在網上可找到python封裝的底層框架,因此也可使用python進行自動化測試

     10)支持設備無源碼測試

             11)新手學習起來較容易

  缺點:1)android版本需要高於4.0以上

     2)需要API17及以上

     3)不支持Webview,所以一般無法對瀏覽器應用進行測試

     4)基於Junit 3, 相對於Junit4, Testing等測試框架,Junit 3不具備許多功能

 

三、Appium

  優點: 1)可支持eclipse中使用

      2)支持webview

      3)支持跨平台,android和ios都可用,開源,支持的語言多,如:java、python

      4)基於Junit 3/Junit4,功能齊全

      5)支持設備無源碼測試

                6)可以跨應用測試

      7)添加'unicodeKeyboard':True,    #使用unicode編碼方式發送字符串 ,'resetKeyborad':True,#將鍵盤隱藏起來    可解決中文輸入法問題
             8)新手學習起來較容易

  缺點:1)非google原生

     2)無法脫機跑

     3)Appium使用WebDriver的json wire協議,來驅動Apple系統的UIAutomation庫、Android系統的UIAutomator框架,說到底,還是使用了uiautomator框架

     4)在運行腳本上感覺執行速度較慢,沒有uiautomator的執行速度快(個人感覺)

 

此3個自動化測試框架,本人都使用過,不太建議使用HierarchyViewer,可以在uiautomator和appium中隨意選擇一個進行使用,網上的相關學習資料特別多   (個人建議,當然可以根據自己愛好進行選擇)


免責聲明!

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



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