APP測(cè)試工具:常用的安卓自動(dòng)化測(cè)試工具對(duì)比分析

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

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

一、monkey

原理:通過socket通訊的方式來(lái)模擬用戶的按鍵輸入,觸摸屏輸入,手勢(shì)輸入等,Monkey 是一個(gè)命令行工具,可以運(yùn)行在模擬器或?qū)嶋H設(shè)備中,通過向系統(tǒng)發(fā)送偽隨機(jī)的用戶事件流,實(shí)現(xiàn)對(duì)全系統(tǒng)或某個(gè)應(yīng)用程序進(jìn)行壓力測(cè)試

使用場(chǎng)景:多用于進(jìn)行穩(wěn)定性測(cè)試。

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

二、monkeyrunner                             

原理:Monkeyrunner是Android自帶的自動(dòng)化測(cè)試工具, 通過adb進(jìn)行對(duì)屏幕的元素dump進(jìn)行解析,并且基于坐標(biāo)發(fā)送點(diǎn)擊操作,然后在這個(gè)基礎(chǔ)上做封裝

使用場(chǎng)景:多用于UI自動(dòng)化測(cè)試

利弊分析:

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

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

3、某些API對(duì)機(jī)型兼容不好,例如4.0以下的機(jī)型,對(duì)viewnode server支持不友善,導(dǎo)致drag api不能正常工作。

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

三、uniautomator                             

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

應(yīng)用場(chǎng)景:Android平臺(tái)的應(yīng)用進(jìn)行黑盒自動(dòng)化測(cè)試,

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

四、Appium

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

應(yīng)用場(chǎng)景:Ios、android黑盒自動(dòng)化測(cè)試

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

五、MobileRunner

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

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

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

移動(dòng)端自動(dòng)化測(cè)試相關(guān)閱讀:

移動(dòng)端自動(dòng)化測(cè)試工具都有哪些?

Android手機(jī)自動(dòng)化測(cè)試工具有哪些?試試MobileRunner移動(dòng)平臺(tái)自動(dòng)化測(cè)試工具

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

添加客服微信 歡迎咨詢測(cè)試工具和測(cè)試服務(wù)

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

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

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

方案咨詢

×
提交信息

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

您的信息已成功提交!

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