原創(chuàng)|行業(yè)資訊|編輯:郝浩|2015-10-23 15:47:43.000|閱讀 819 次
概述:在市場上有很多的自動化測試工具,有開源的,也有付費(fèi)的,其中前者被廣泛應(yīng)用在自動化測試社區(qū),如果你想要在項(xiàng)目中選擇合適的開源自動化工具,會相當(dāng)?shù)募帧?以下筆者收集了移動開發(fā)常用的五個(gè)開源自動化工具,供你參考。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
自動化測試在產(chǎn)品測試中起著非常重要的作用。它能夠給項(xiàng)目開發(fā)帶來諸多好處:在產(chǎn)品開發(fā)階段,重復(fù)可靠的運(yùn)行,確保沒有回歸方面的問題;在產(chǎn)品面臨交互的關(guān)鍵時(shí)刻,用最短的時(shí)間覆蓋最大化面積的測試執(zhí)行區(qū)域;它重復(fù)地進(jìn)行著每個(gè)周期的回歸測試,最大限度地減少人為錯(cuò)誤所產(chǎn)生的風(fēng)險(xiǎn)或疏忽。
在市場上有很多的自動化測試工具,有開源的,也有付費(fèi)的,其中前者被廣泛應(yīng)用在自動化測試社區(qū),如果你想要在項(xiàng)目中選擇合適的開源自動化工具,會相當(dāng)?shù)募帧?以下筆者收集了移動開發(fā)常用的五個(gè)開源自動化工具,供你參考。
Calabash是一個(gè)用于Android和iOS自動化驗(yàn)收的開源的測試框架。作為一個(gè)跨平臺的框架,它為Android和iOS的自動化測試提供了獨(dú)立的庫,支持Cucumber——通過自然的英語傳遞應(yīng)用行為從而實(shí)現(xiàn)BDD(行為驅(qū)動開發(fā))。
Calabash提供了一條連接Cucumber測試工具與移動端操作系統(tǒng)的橋梁。所編寫的Cucumber測試聲明列表會形成不同的測試場景,而這些聲明全都是由Ruby定義的。
在Calabash中,一個(gè)Cucumber的聲明只允許被定義一次,但是可重復(fù)運(yùn)用到一個(gè)Cucumber腳本下的多個(gè)不同的場景之中。
實(shí)際的測試都是由Gherkin語言進(jìn)行編寫(在feature文件中),再轉(zhuǎn)譯成Ruby語言,然后運(yùn)行在Cucumber框架之中。
Appium是由Sauce Labs公司開發(fā)的一個(gè)用于本地、混合、移動web應(yīng)用程序的開源自動化測試框架。Appium框架中的庫函數(shù)可調(diào)用運(yùn)行在后臺操作連接設(shè)備的Appium服務(wù)器,在內(nèi)部它使用JSONWire協(xié)議與使用Selenium WebDriver 的iOS或Android應(yīng)用程序產(chǎn)生聯(lián)系。
與主要由Ruby支持的Calabash不同的是,Appium使用的框架語言可由你任意選擇,這其中包括Java、 Python、 Ruby和所有其它Selenium WebDriver支持的語言。
Appium服務(wù)器被托管在節(jié)點(diǎn)服務(wù)器之上。你可以通過一組節(jié)點(diǎn)命令來開啟Appium服務(wù)器。如果你使用Appium獨(dú)立應(yīng)用程序來作為你的服務(wù)器(從Appium網(wǎng)站下載),Inspector工具就可以對你應(yīng)用程序上的所有定位器(Locator)進(jìn)行定位/識別/操作。
Robotium是一個(gè)用于功能、系統(tǒng)和驗(yàn)收測試場景開發(fā)的開源測試框架。它與Selenium很相似,但只能用于Android。目前,它已經(jīng)獲得了Apache License 2.0的許可。
由于非常簡單并且能夠創(chuàng)建強(qiáng)大健壯的自動化場景,Robotium在自動化社區(qū)中廣受歡迎。它使用了運(yùn)行時(shí)間與GUI組件相結(jié)合的方式,安裝測試用例套件來作為Android設(shè)備或者模擬器上的應(yīng)用程序,從而提供了測試執(zhí)行的真實(shí)環(huán)境。
Frank是一個(gè)iOS應(yīng)用程序自動化框架,它提供了在Cucumber中使用英語句子編寫測試場景的功能。
Frank需要被編譯進(jìn)測試環(huán)境下的應(yīng)用程序中,這就意味著你的源代碼會發(fā)生強(qiáng)制性改變。它結(jié)合了發(fā)送到運(yùn)行著本地應(yīng)用程序的服務(wù)器端的Cucumber和JSON命令,并通過UISpec運(yùn)行這些命令。
UIAutomator是由谷歌開發(fā)的用于對本地的Android應(yīng)用和游戲提供先進(jìn)UI測試的測試框架。這是一個(gè)包含創(chuàng)建功能性UI測試所需API和運(yùn)行測試所需執(zhí)行引擎的Java庫。這個(gè)庫附帶Android SDK以及供初學(xué)者學(xué)習(xí)的入門教程。它有一個(gè)很大的優(yōu)勢是在運(yùn)行訪問不同進(jìn)程時(shí)它能夠給予JUnit 測試用例特殊許可。雖然它非常不錯(cuò),使本地的應(yīng)用程序自動化變得更加簡單了,但是它對于WebView自動化的支持卻相當(dāng)有限。另外它只支持API級別在16及其以上的設(shè)備,當(dāng)然這不是一個(gè)大的問題,因?yàn)楝F(xiàn)在大多數(shù)的應(yīng)用程序都運(yùn)行在API級別在19及其以上的設(shè)備上。
本文翻譯自 轉(zhuǎn)載請注明 本文轉(zhuǎn)載自:慧都控件網(wǎng)
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn