產(chǎn)品體驗中心 下載與支持 產(chǎn)品社區(qū) 澤眾云   合作代理 |  咨詢電話:400-035-7887/021-6072 5088

APP測試工具:常用的安卓自動化測試工具對比分析

發(fā)布時間:2020-06-17

現(xiàn)在世面上的安卓自動化測試工具五花八門,讓人看的眼花繚亂,那么今天就讓小編帶你分析下當前世面上的移動端自動化工具。首先我們探究一下各種測試工具的實現(xiàn)原理和應用場景以及利弊分析。

一、monkey

原理:通過socket通訊的方式來模擬用戶的按鍵輸入,觸摸屏輸入,手勢輸入等,Monkey 是一個命令行工具,可以運行在模擬器或實際設備中,通過向系統(tǒng)發(fā)送偽隨機的用戶事件流,實現(xiàn)對全系統(tǒng)或某個應用程序進行壓力測試

使用場景:多用于進行穩(wěn)定性測試。

利弊分析:測試的對象僅為應用程序包,有一定的局限性。Monkey測試使用的事件流數(shù)據(jù)流是隨機的,不能進行自定義。

二、monkeyrunner                             

原理:Monkeyrunner是Android自帶的自動化測試工具, 通過adb進行對屏幕的元素dump進行解析,并且基于坐標發(fā)送點擊操作,然后在這個基礎上做封裝

使用場景:多用于UI自動化測試

利弊分析:

1、可以完成一定復雜程度的測試用例,避免重復的人工工作量;

2、結合heap、strict mode等工具,可以實現(xiàn)壓力測試,性能優(yōu)化等任務;

3、某些API對機型兼容不好,例如4.0以下的機型,對viewnode server支持不友善,導致drag api不能正常工作。

4、由于monkeyrunner的實現(xiàn)基于python腳本,性能比較低下,對腳本的編寫有質量要求。

三、uniautomator                             

原理:是Android提供的自動化測試框架,UiAutomator是Google仿照微軟Uiautomation提供的一套自動化框架,基于Android AccessilibilityService提供(注:Android AccessilibilityService,是一個可訪問服務,是一個為增強用戶界面并幫助殘疾用戶的應用程序,或者用戶可能無法完全與設備的交互。例如,用戶在開車。那么用戶就有可能需要添加額外的或者替代的用戶反饋方式)。

應用場景:Android平臺的應用進行黑盒自動化測試,

利弊分析:基本上支持所有的Android事件操作,對比Instrumentation它不需要測試人員了解代碼實現(xiàn)細節(jié)(可以用UiAutomatorviewer抓去App頁面上的控件屬性而不看源碼)。基于Java,測試代碼結構簡單、編寫容易、學習成本,一次編譯,所有設備或模擬器都能運行測試,能跨App(比如:很多App有選擇相冊、打開相機拍照,這就是跨App測試。

四、Appium

原理:Appium是一個開源、跨平臺的測試框架,可以用來測試原生及混合的移動端應用。Appium支持IOS、Android及FirefoxOS平臺。Appium使用WebDriver的json wire協(xié)議,來驅動Apple系統(tǒng)的UIAutomation庫、Android系統(tǒng)的UIAutomator框架。Appium對IOS系統(tǒng)的支持得益于Dan Cuellar’s對于IOS自動化的研究。Appium也集成了Selendroid,來支持老android版本。

應用場景:Ios、android黑盒自動化測試

利弊分析:Appium支持Selenium WebDriver支持的所有語言,如java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure,或者Perl語言,更可以使用Selenium WebDriver的Api。Appium支持任何一種測試框架。如果只使用Apple的UIAutomation,我們只能用javascript來編寫測試用例,而且只能用Instruction來運行測試用例。同樣,如果只使用Google的UIAutomation,我們就只能用java來編寫測試用例。Appium實現(xiàn)了真正的跨平臺自動化測試。

五、MobileRunner

MobileRunner(簡稱MR)是面向移動平臺(android和ios)的自動化測試工具。支持同時直接連接多臺移動設備,通過腳本錄制和執(zhí)行,實現(xiàn)移動設備和應用的自動化測試、設備兼容性測試、功能測試等工作。

應用場景:支持主流的兩大操作系統(tǒng),安卓與IOS系統(tǒng)全支持。

優(yōu)勢:使用Java作為腳本語言,使腳本更簡單,并且Java有大量的擴展包,能夠讓用戶自己來擴展功能。Java作為標準化、流行的開發(fā)技術,擁有大量的擁護者和開發(fā)者,容易學習,也更容易找到懂得Java的測試工程師,降低人員成本。MobileRunner支持函數(shù)調用,支持腳本調用腳本,能夠非常簡單地實現(xiàn)各種復雜腳本的編寫。

移動端自動化測試相關閱讀:

移動端自動化測試工具都有哪些?

Android手機自動化測試工具有哪些?試試MobileRunner移動平臺自動化測試工具

本文內容不用于商業(yè)目的,如涉及知識產(chǎn)權問題,請權利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。
滬ICP備07036474號 2003-2024 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.
微信
咨詢

添加客服微信 歡迎咨詢測試工具和測試服務

微信客服
問題
反饋
產(chǎn)品
畫冊

掃描二維碼下載澤眾軟件企業(yè)宣傳冊

產(chǎn)品畫冊
返回
頂部

方案咨詢

×
提交信息

電話咨詢,400-035-7887,安排專業(yè)技術售前給您解答(產(chǎn)品試用、技術交流、服務咨詢和商務報價)。

您的信息已成功提交!

我們的客服人員稍后會與您聯(lián)系