欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android和iOS 測(cè)試五個(gè)最好的開源自動(dòng)化工具

 更新時(shí)間:2016年09月04日 09:23:30   投稿:lqh  
本文主要介紹Android和iOS 五個(gè)最好的開源自動(dòng)化工具,這里整理了相關(guān)資料,希望能幫助測(cè)試軟件的朋友,有需要的看下

       自動(dòng)化測(cè)試在產(chǎn)品測(cè)試上有著非常重要的作用。實(shí)現(xiàn)測(cè)試自動(dòng)化有多種積極的方式,包括最大限度地減少測(cè)試執(zhí)行時(shí)間;在關(guān)鍵的發(fā)布階段,用更少的時(shí)間確保更大的覆蓋范圍;在產(chǎn)品開發(fā)階段,可靠又重復(fù)性地運(yùn)行以確保沒(méi)有引進(jìn)回歸問(wèn)題。最大限度地減少重復(fù)性回歸測(cè)試循環(huán)時(shí)的人為錯(cuò)誤和疏忽的風(fēng)險(xiǎn)。

  在市場(chǎng)上有很多可用的工具,開源的或要付費(fèi)的。雖然付費(fèi)和開源工具各有利弊,但是后者在自動(dòng)化測(cè)試社區(qū)得到了廣泛的應(yīng)用。根據(jù)項(xiàng)目需求來(lái)選擇合適的自動(dòng)化工具是非常棘手的。

  下面介紹5個(gè)最佳的iOS和Android開源自動(dòng)化工具。

  1.Calabash(適用于Android和iOS)

  Calabash是一個(gè)開源的驗(yàn)收測(cè)試框架,支持Android和iOS自動(dòng)化。Calabash為Android和iOS自動(dòng)化測(cè)試提供了一個(gè)單獨(dú)的庫(kù)。這是一個(gè)跨平臺(tái)的框架,支持 Cucumber,Cucumber能讓你用自然的英語(yǔ)語(yǔ)言表述app的行為,實(shí)現(xiàn)BDD(Behavior Driven Development,行為驅(qū)動(dòng)開發(fā))。

  Calabash提供了一個(gè)橋梁,允許Cucumber測(cè)試對(duì)iOS和Android運(yùn)行和驗(yàn)證。Cucumber測(cè)試使用一列語(yǔ)句寫入,這些語(yǔ)句會(huì)形成很多測(cè)試場(chǎng)景。Cucumber中的所有語(yǔ)句使用Ruby定義。

  在Calabash,Cucumber語(yǔ)句只能被定義一次,但可以在Cucumber腳本的不同場(chǎng)景中重復(fù)使用。

  實(shí)際測(cè)試是用Gherkin寫的,依靠Ruby代碼的支持,并在Cucumber框架的上下文中運(yùn)行。

  優(yōu)點(diǎn):

  ◆大型社區(qū)支持。

  ◆簡(jiǎn)單,類似英語(yǔ)表述的測(cè)試語(yǔ)句。

  ◆支持在屏幕上的所有動(dòng)作,如滑動(dòng),縮放,旋轉(zhuǎn),敲擊等。

  ◆大型且熱心的社區(qū)。

  ◆跨平臺(tái)開發(fā)支持(同樣的代碼在Android和iOS設(shè)備中都適用)。

  缺點(diǎn):

  ◆測(cè)試步驟失敗后,將跳過(guò)所有的后續(xù)步驟。這可能會(huì)導(dǎo)致錯(cuò)過(guò)更嚴(yán)重的產(chǎn)品問(wèn)題。

  ◆需要時(shí)間來(lái)進(jìn)行測(cè)試,因?yàn)樗紫瓤偸悄J(rèn)安裝app。但是,這種設(shè)置可以通過(guò)在代碼中配置一個(gè)鉤子(hook)覆蓋掉。

  ◆需要Calabash框架安裝在ios的ipa文件中。

  ◆我們必須要有iOS的app代碼。

  ◆除了Ruby,對(duì)其他語(yǔ)言不友好。

  2.Appium(Android和iOS)

  Appium是Sauce Labs出品的一個(gè)開源的自動(dòng)化測(cè)試框架,用于原生、混合和移動(dòng)的web app??蚣軆?nèi)的Appium庫(kù)函數(shù)調(diào)用Appium服務(wù)器是在操作連接設(shè)備的后臺(tái)運(yùn)行的。它在內(nèi)部使用JSONWireProtocol,來(lái)與使用 Selenium的WebDriver的iOS和Android app進(jìn)行互動(dòng)。

  不像Calabash只支持Ruby開發(fā),在框架中使用Appium時(shí),你可以從Java、Python和Ruby,以及所有其他Selenium WebDriver支持的語(yǔ)言中選擇。

  Appium服務(wù)器被托管在Node服務(wù)器上。你可以通過(guò)觸發(fā)一組Node命令來(lái)啟動(dòng)Appium服務(wù)器。使用Appium Standalone Application作為服務(wù)器(從Appium網(wǎng)站下載),Inspector工具可對(duì)app的所有定位器提供查找/識(shí)別/操作的能力。

  優(yōu)點(diǎn):

  ◆支持多種語(yǔ)言。

  ◆不需要訪問(wèn)源代碼。

  ◆跨平臺(tái)腳本開發(fā)。

  ◆大型社區(qū)支持。

  ◆支持Mac上的腳本記錄。

  ◆使用Appium Server應(yīng)用程序的Inspector工具提取標(biāo)識(shí)符。

  ◆通過(guò)Appium Server的桌面應(yīng)用程序?qū)elendroid內(nèi)置支持。

  ◆它還使用供應(yīng)商提供的框架:適用于iOS的UIAutomation ,分別適用于Android 4.2+和 2.3+的UIAutomator和Selendroid。

  ◆支持物理設(shè)備與仿真器。

  ◆支持原生,混合和移動(dòng)的web自動(dòng)化應(yīng)用程序。

  缺點(diǎn):

  ◆Appium Server桌面應(yīng)用程序的發(fā)布常常不穩(wěn)定。

  ◆腳本記錄不適用于Application服務(wù)器對(duì)于Windows OS的桌面應(yīng)用程序。

  3.Robotium(Android)

  Robotium是一個(gè)開源的測(cè)試框架,用于開發(fā)功能性,系統(tǒng),和驗(yàn)收測(cè)試場(chǎng)景。它與Selenium非常相似,除了Robotium只適用于Android。它注冊(cè)在Apache License 2.0下。

  因?yàn)樗坏?jiǎn)單,而且又具有創(chuàng)建強(qiáng)大又可靠的自動(dòng)化場(chǎng)景的能力,因而它在自動(dòng)化測(cè)試社區(qū)廣泛流行。

  它采用運(yùn)行時(shí)綁定到GUI組件。它安裝了一個(gè)測(cè)試用例套件作為在Android設(shè)備或仿真器上的應(yīng)用程序,并提供用于執(zhí)行測(cè)試的真實(shí)環(huán)境。

  優(yōu)點(diǎn):

  ◆容易在最短的時(shí)間內(nèi)編寫測(cè)試腳本。

  ◆預(yù)裝自動(dòng)化app是可能的。

  ◆自動(dòng)跟隨當(dāng)前activity。

  ◆由于運(yùn)行時(shí)綁定到GUI組件,所以相比Appium,它的測(cè)試執(zhí)行更快,更強(qiáng)大。

  ◆不訪問(wèn)代碼或不知道app實(shí)現(xiàn),也可以工作。

  ◆支持Activities、Dialogs、Toasts、Menus、Context Menus和其他Android SDK控件。

  缺點(diǎn):

  ◆不能處理flash和web組件。

  ◆支持Java開發(fā)。

  ◆在舊設(shè)備上會(huì)變得很慢。

  ◆由于不支持iOS設(shè)備,當(dāng)自動(dòng)化測(cè)試同時(shí)覆蓋 android與iOS的情況時(shí),測(cè)試會(huì)被中斷。

  ◆沒(méi)有內(nèi)置的記錄和回放功能. 使用記錄功能需要 TestDroid 和 Robotium Recorder 這樣收費(fèi)工具。

  4.Frank(iOS)

  Frank是一個(gè)iOS app的自動(dòng)化框架,允許使用Cucumber編寫結(jié)構(gòu)化英語(yǔ)句子的測(cè)試場(chǎng)景。

  Frank要求測(cè)試時(shí)在應(yīng)用程序內(nèi)部編譯,這意味著對(duì)源代碼的改變是強(qiáng)制性的。這是一個(gè)使用Cucumber和JSON組合命令的工具,命令發(fā)送到在本地應(yīng)用程序內(nèi)部運(yùn)行的服務(wù)器上,并利用UISpec運(yùn)行命令。

  優(yōu)點(diǎn):

  ◆測(cè)試場(chǎng)景是在Cucumber的幫助下,用可理解的英語(yǔ)句子寫的。

  ◆Symbiote——包含實(shí)時(shí)檢查工具。

  ◆如果團(tuán)隊(duì)有關(guān)于web selenium和cucumber自動(dòng)化框架的經(jīng)驗(yàn),也有效。

  ◆活躍的社區(qū)支持。

  ◆不斷擴(kuò)大中的庫(kù)。

  缺點(diǎn):

  ◆對(duì)手勢(shì)的支持有限。

  ◆在設(shè)備上運(yùn)行測(cè)試有點(diǎn)難。

  ◆修改配置文件需要在實(shí)際設(shè)備上運(yùn)行。

  ◆記錄功能不可用。

  5.UIAutomator(Android)

  UIAutomator是由谷歌提供的測(cè)試框架,它提供了原生Android app和游戲的高級(jí)UI測(cè)試。這是一個(gè)包含API的Java庫(kù),用來(lái)創(chuàng)建功能性UI測(cè)試,還有運(yùn)行測(cè)試的執(zhí)行引擎。該庫(kù)自帶Android SDK。有很多教程可供初學(xué)者上手。優(yōu)點(diǎn)是它在運(yùn)行訪問(wèn)不同的進(jìn)程時(shí),會(huì)給JUnit測(cè)試案例特權(quán)。雖然這對(duì)本地自動(dòng)化app既好又更簡(jiǎn)單,但是它對(duì) web自動(dòng)化視圖非常有限或幾乎沒(méi)有任何支持。它僅支持使用API level 16及以上的設(shè)備,不過(guò)這也不算什么很大的因素,因?yàn)楝F(xiàn)在大多數(shù)的app支持API level 19及以上。

  優(yōu)點(diǎn):

  ◆簡(jiǎn)單易學(xué)的教程。

  ◆庫(kù)由谷歌社區(qū)支持和維護(hù)。

  ◆第三方支付集成了基于云計(jì)算的測(cè)試管理。

  缺點(diǎn):

  ◆僅支持android 4.1及以上。

  ◆不支持腳本記錄。

  ◆支持的重點(diǎn)是Java。

  ◆你不能獲得當(dāng)前活動(dòng)或儀表化。

  ◆目前不支持web視圖,因此是混合app。

  ◆庫(kù)支持使用Java,因此如果有人想和使用Ruby的cucumber混合,會(huì)很困難。不過(guò)Java有它自己的BDD框架,雖然在實(shí)踐中用到的也不多。

         以上就是對(duì)Android 和IOS 自動(dòng)化測(cè)試的資料整理,后續(xù)繼續(xù)補(bǔ)充相關(guān)資料,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論