原創(chuàng)|行業(yè)資訊|編輯:郝浩|2017-09-25 16:34:13.000|閱讀 2393 次
概述:為你的項目選擇正確的Android UI框架是一項很有挑戰(zhàn)性的工作,在某些情況下,您可能需要使用多種工具來達(dá)到正確的平衡。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Appium是一個開源的移動測試工具,支持iOS和Android,它可以用來測試任何類型的移動應(yīng)用(原生、網(wǎng)絡(luò)和混合)。作為一個跨平臺的工具,你可以在不同的平臺上運行相同的測試。為了實現(xiàn)跨平臺的功能,Appium使用了供應(yīng)商提供的Android UI框架來實施測試:在iOS中使用XCTest,在Android中使用UIAutomator或Instrumentation。它將這些供應(yīng)商框架封裝到Selenium WebDriver中,這使得使用Appium的開發(fā)者可以編寫各種類型語言的測試:Java、Objective-C、JavaScript、PHP、Ruby、Python等等。這也使得編寫Appium測試與編寫Selenium測試非常相似。
WebDriver最初是為web測試創(chuàng)建的,Appium用額外的API方法擴展了WebDriver,使得它更適合于移動自動化。
以下是一些有用的Appium特性:
Calabash是由Xamarin公司開發(fā)和維護的一款開源的移動測試工具,支持iOS和Android上的原生和混合應(yīng)用。Calabash測試支持手勢識別(gesture)、斷言(assertions)和屏幕截圖(screenshots)等功能,通常與驅(qū)動開發(fā)測試工具Cucumber一起集成使用。
Xamarin在2017年宣布,它將對Calabash停止繼續(xù)開發(fā)。鑒于此決定,你可以將Calabash作為一個不太理想的備選測試解決方案。
Espresso是谷歌的一個Android UI框架。它是一個輕量級的、針對應(yīng)用程序開發(fā)人員的白盒工具,這意味著要充分利用它,測試開發(fā)人員必須充分熟悉并且會使用應(yīng)用程序代碼。Espresso的測試非常可靠,并且運行速度很快,由于Espresso可以訪問UI對象的內(nèi)部,它可以用于測試WebView,即混合應(yīng)用程序的開發(fā)。
Espresso的缺點是,它一次只能測試一個應(yīng)用程序,而且無法訪問設(shè)備資源。然而,通過使用UI Automator創(chuàng)建的聯(lián)合測試可以很容易地解決這個問題,可以很好的解釋如何實施。
Sauce Labs支持Espresso的真實設(shè)備測試。
UI Automator是由谷歌開發(fā)和維護的移動測試Android UI框架,它的主要功能包含了跨應(yīng)用程序的功能測試,即測試多個應(yīng)用程序和在已安裝與系統(tǒng)應(yīng)用程序之間的切換的功能。
UI Automator是一個黑盒測試工具,也就是說測試開發(fā)人員不需要知道內(nèi)部的應(yīng)用程序結(jié)構(gòu),可以完全依賴于可見的UI元素。UI Automator的測試是用Java編寫的,由兩組api組成:其一為UI Automator APIs,是控制應(yīng)用程序的UI組件;其二為device state APIs,用于訪問和執(zhí)行設(shè)備上的操作(如改變設(shè)備旋轉(zhuǎn),按方向鍵按鈕,按返回,Home或者菜單按鈕等)。它還附帶了一個非常有用的UI Automator Viewer,這是一個可以掃描和分析當(dāng)前配置在設(shè)備上的UI組件的圖形用戶界面工具。
UI Automator的缺點是不支持構(gòu)建在混合Android應(yīng)用程序之上的WebView,因此,UI Automator只支持原生的Android應(yīng)用程序。
Robotium是一個開源的Android UI框架,它誕生于2010年,現(xiàn)在已經(jīng)是一個非常成熟和穩(wěn)定的工具。其最近的一個版本是5.6.3,發(fā)布于2016年9月。在最新的幾個版本中,其測試可讀性和測試執(zhí)行的速度都有了顯著提高。
大多數(shù)涉及到Robotium的技術(shù)博客、教程和課程都是黑盒測試類型的。但實際上,它算是灰盒測試的,因為編寫Robotium測試需要了解內(nèi)部應(yīng)用程序結(jié)構(gòu)。
以下是Robotium的部分主要特性:
Robotium得到了Sauce Labs的支持,可以用于真實設(shè)備的測試。
為您的項目選擇正確的Android UI框架是一項很有挑戰(zhàn)性的工作,在某些情況下,您可能需要使用多種工具來達(dá)到正確的平衡,這就是像Sauce Labs這樣的支持多種測試框架的測試網(wǎng)格大受歡迎的原因。
本文翻譯自,譯者:慧都控件網(wǎng)-回憶和感動
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn