qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          使用模擬器和實(shí)際設(shè)備進(jìn)行自動(dòng)化測(cè)試

            移動(dòng)測(cè)試的挑戰(zhàn)


            在看移動(dòng)測(cè)試的自動(dòng)化工具前,你需要對(duì)與移動(dòng)應(yīng)用程序面臨的挑戰(zhàn)稍作了解。

            設(shè)備

            移動(dòng)應(yīng)用程序應(yīng)該在你要求的設(shè)備上工作。

            移動(dòng)應(yīng)用程序必須在每個(gè)設(shè)備上都正常工作。

            移動(dòng)設(shè)備必須為應(yīng)用程序的運(yùn)行時(shí)間進(jìn)行測(cè)試。

            移動(dòng)設(shè)備處理能力不同,內(nèi)存有限,還必須考慮通信協(xié)議。

            應(yīng)用

            新的操作系統(tǒng)版本和功能意味著開發(fā)人員建立了必須被測(cè)試的新的,更復(fù)雜的程序。

            多個(gè)構(gòu)建常常時(shí)間很短,因此腳本執(zhí)行往往不能完成。

            網(wǎng)絡(luò)

            多種網(wǎng)絡(luò)類型,必須進(jìn)行測(cè)試,如GSM,CDMA,GPRS和Wi-Fi。

            不同的連接速度(包括2G,3G和4G LTE)必須跨地點(diǎn)測(cè)試。

            世界各地有超過(guò)400多的移動(dòng)網(wǎng)絡(luò)運(yùn)營(yíng)商,測(cè)試必須處理各種網(wǎng)絡(luò)。

            技術(shù)

            必須考慮大量的測(cè)試用例。

            必須處理手機(jī)特有的功能,包括觸屏約定。

            必須執(zhí)行API級(jí)別的測(cè)試。

            移動(dòng)應(yīng)用程序類型

            當(dāng)制定移動(dòng)測(cè)試策略時(shí),你必須清楚了解可能需要測(cè)試的應(yīng)用程序。移動(dòng)應(yīng)用程序可分為本地應(yīng)用程序(Native App), 網(wǎng)絡(luò)應(yīng)用程序(WebApp)和混合應(yīng)用程序(Hybrid App)。

            Native應(yīng)用程序

            Native App是專為移動(dòng)操作系統(tǒng)所建,并直接安裝到該設(shè)備上。

            用戶通常通過(guò)網(wǎng)上商店或市場(chǎng)(如App Store)獲取這些應(yīng)用程序。

            Native App是用本地編程語(yǔ)言構(gòu)建的。例如:iPhone或iPad apps是用ObjectiveC構(gòu)建的,Android apps是用Java構(gòu)建的。Native App速度快,提供更好的用戶體驗(yàn)和界面,并且通常可以獲取目標(biāo)設(shè)備的所有功能。

            Native Apps的功能包括:

            存儲(chǔ)。二進(jìn)制“可執(zhí)行映像”,被明確下載并存儲(chǔ)到移動(dòng)設(shè)備的文件系統(tǒng)中。安裝過(guò)程可以由用戶,或者在某些情況下,由企業(yè)的IT部門開啟。

            分布。獲得Native Apps最常見的方法是去有相關(guān)特定設(shè)備的應(yīng)用程序商店或市場(chǎng)(iTunes有iPhone或iPad的apps,安卓市場(chǎng)有Android Apps),或者通過(guò)企業(yè)分配機(jī)制獲取。

          操作。程序直接在操作系統(tǒng)中運(yùn)行:

            由主屏幕開啟。

            不需要另一個(gè)存儲(chǔ)器應(yīng)用程序來(lái)運(yùn)行它。

            明確利用操作系統(tǒng)APIs。

            移動(dòng)Web應(yīng)用程序

            移動(dòng)Web應(yīng)用程序是專門針對(duì)移動(dòng)設(shè)備的網(wǎng)絡(luò)驅(qū)動(dòng)應(yīng)用程序。

            這些應(yīng)用程序是通過(guò)移動(dòng)設(shè)備的網(wǎng)頁(yè)瀏覽器獲取的(例如:iPhone上的Safari)。用戶不需要在設(shè)備上直接下載和安裝該應(yīng)用程序。







          手機(jī)模擬器

          費(fèi)用: 手機(jī)模擬器是作為每個(gè)新的操作系統(tǒng)發(fā)布的軟件開發(fā)工具包的一部分來(lái)免費(fèi)提供的。

          簡(jiǎn)單: 模擬器下載和安裝簡(jiǎn)單,即刻使用。許多模擬器能夠以簡(jiǎn)單和直接的方式來(lái)運(yùn)行。

          快速: 比起要連接到本地網(wǎng)絡(luò)或云的真實(shí)設(shè)備,模擬器的等待時(shí)間更短。

          硬件支持: 仿真模擬里,完全的硬件支持是無(wú)法測(cè)試的。

          計(jì)算資源: 根據(jù)PC運(yùn)行模擬器的處理能力和被用來(lái)測(cè)試的手機(jī)和智能機(jī)的類型,模擬器上的表現(xiàn)比起真實(shí)設(shè)備,可能是不切實(shí)際的好或壞。
          網(wǎng)絡(luò)互用性:使用模擬器不可能測(cè)試網(wǎng)絡(luò)相關(guān)事件的影響 (如:來(lái)電,短信),不同的關(guān)于移動(dòng)應(yīng)用程序行為的網(wǎng)絡(luò)技術(shù)(如: HSPDA, WCDMA, UMTS和LTE). 由于模擬器并沒(méi)有連接到移動(dòng)網(wǎng)絡(luò),它們不支持互操作性測(cè)試。

          真實(shí)設(shè)備

          可信賴的: 在真實(shí)設(shè)備上進(jìn)行的測(cè)試給出的是最精確的結(jié)果。
          網(wǎng)絡(luò)的互操作性:真實(shí)設(shè)備測(cè)試是在真實(shí)的網(wǎng)絡(luò)中進(jìn)行的。用戶體驗(yàn):通過(guò)使用真實(shí)設(shè)備, 可以把特定設(shè)備的CPU,內(nèi)存或屏幕大小等元素考慮在內(nèi),準(zhǔn)確地看到用戶體驗(yàn)。

          物流和成本: 購(gòu)買不同版本操作系統(tǒng)的不同設(shè)備是相當(dāng)昂貴的,還要浪費(fèi)不少精力來(lái)購(gòu)買和管理這些設(shè)備。

            表1:使用模擬器和真實(shí)設(shè)備的利弊

            移動(dòng)Web應(yīng)用程序功能:

            完全使用Web技術(shù),如HTML(尤其是HTML5),CSS,Javascript代碼寫的。

            該代碼是由瀏覽器執(zhí)行,而不是由操作系統(tǒng)。

            用戶可以通過(guò)多種方式啟動(dòng)應(yīng)用程序:輸入網(wǎng)址,單擊超鏈接,掃描QR碼,或者單擊主屏幕上的快捷方式。

            安裝是非強(qiáng)制性的。

            支持多種操作系統(tǒng)。

            混合應(yīng)用程序

            類似本地應(yīng)用,混合應(yīng)用程序是使用傳統(tǒng)的Web技術(shù)開發(fā)的。

            Hybrid applications是在每臺(tái)設(shè)備上的本地應(yīng)用程序存儲(chǔ)器中運(yùn)行的,但卻是集中部署和維護(hù),是跨平臺(tái)的性質(zhì)的。通常情況下,他們是由云服務(wù),所以地球上任何地方的終端用戶體驗(yàn)是一致的,跨設(shè)備的。


              使用模擬器和實(shí)際設(shè)備進(jìn)行自動(dòng)化測(cè)試


            模擬器是用來(lái)復(fù)制一個(gè)移動(dòng)設(shè)備的內(nèi)部工作的。它是用于開發(fā)和測(cè)試移動(dòng)應(yīng)用程序的強(qiáng)大工具,被用于手動(dòng)和自動(dòng)化測(cè)試中。

            當(dāng)然,移動(dòng)APP是用在真實(shí)設(shè)備,而不是模擬器上的,所以測(cè)試必須在實(shí)際設(shè)備上進(jìn)行,以確保應(yīng)用質(zhì)量的最高水平。

            然而,讓你們組織里每個(gè)移動(dòng)測(cè)試團(tuán)隊(duì)都擁有一個(gè)實(shí)際設(shè)備是很燒錢的,所以使用模擬器是一個(gè)可以控制成本的有效方法。

            在制定移動(dòng)測(cè)試策略時(shí),你們組織應(yīng)該謹(jǐn)慎拳皇使用模擬器或?qū)嶋H設(shè)備的利弊。

            移動(dòng)設(shè)備自動(dòng)化測(cè)試工具分類

            有三種類型的工具可以支持移動(dòng)設(shè)備的自動(dòng)化測(cè)試。

            本地平臺(tái)工具

            本地平臺(tái)工具通常是由移動(dòng)平臺(tái)供應(yīng)商提供的軟件開發(fā)工具包的一部分。這些框架通常與用戶界面對(duì)象級(jí)別的應(yīng)用程序進(jìn)行交互。

            這些工具允許更復(fù)雜的基于對(duì)象的交互,十分成熟,還支持本地UI對(duì)象,因?yàn)樗鼈兪瞧脚_(tái)供應(yīng)商支持的。

            因?yàn)檫@些是操作系統(tǒng)級(jí)別的應(yīng)用程序?qū)ο螅憧梢酝ㄟ^(guò)用測(cè)試中的應(yīng)用程序編譯的小數(shù)據(jù)庫(kù)(也被稱為 “instrumentation”)洞察他們。

            基于視覺(jué)的多平臺(tái)工具

            基于視覺(jué)的多平臺(tái)工具最常用在移動(dòng)設(shè)備自動(dòng)化測(cè)試?yán)铩?/p>

            這些工具通過(guò)可視化手段與設(shè)備交互,并可以識(shí)別文本或圖像,使測(cè)試人員構(gòu)建基于這些認(rèn)識(shí)和內(nèi)置的手勢(shì)的自動(dòng)腳本。

            基于視覺(jué)的多平臺(tái)工具的優(yōu)點(diǎn)是它們支持多個(gè)平臺(tái),并且可跨多個(gè)設(shè)備執(zhí)行測(cè)試。

            視覺(jué)對(duì)象由OCR引擎(基本上都是將掃描的手寫、機(jī)打圖像,或印刷文本轉(zhuǎn)換成機(jī)器編碼的文本智能軟件引擎)識(shí)別。

            基于對(duì)象的多平臺(tái)工具

            基于對(duì)象的多平臺(tái)工具可以在應(yīng)用程序內(nèi)通過(guò)識(shí)別,攔截,并發(fā)送信息到對(duì)象,直接用和傳統(tǒng)的測(cè)試工具一樣的方式來(lái)與應(yīng)用程序UI對(duì)象進(jìn)行交互。

            這些工具的優(yōu)勢(shì)是,他們支持多種平臺(tái),并且可以跨平臺(tái)上執(zhí)行測(cè)試。

            對(duì)象級(jí)整合也對(duì)應(yīng)用程序變化更加寬容,從而降低與自動(dòng)化測(cè)試相關(guān)的整體維護(hù)成本。

            移動(dòng)自動(dòng)化測(cè)試的方法

            在規(guī)劃您的移動(dòng)自動(dòng)化工作時(shí),別忘了以下的工具評(píng)估和選擇,對(duì)象技術(shù)的方法:

            工具評(píng)估和選擇

            執(zhí)行工具的可行性,以檢查是否該工具可以在各種移動(dòng)技術(shù)和平臺(tái)使用。

            選擇一個(gè)同時(shí)支持真機(jī)和模擬器或仿真器的工具。

            識(shí)別多種設(shè)備和版本支持。

            用實(shí)用性和可重復(fù)使用功能增加自動(dòng)化測(cè)試工作的價(jià)值。

            了解如果選擇的工具需要你破解或獲取設(shè)備的根。

            確保該工具支持操作系統(tǒng)的新版本。

            對(duì)象識(shí)別

            基于圖像的對(duì)象識(shí)別:把每個(gè)測(cè)試對(duì)象記錄為圖像,在GUI中匹配對(duì)象和可用運(yùn)行時(shí)間圖像。

            光學(xué)字符識(shí)別對(duì)象的對(duì)象識(shí)別:使用光學(xué)字符識(shí)別(OCR)功能獲取屏幕上的控件的文本。該功能使用了通過(guò)字符讀取字符文本的專門算法。

            真實(shí)對(duì)象或本地的對(duì)象標(biāo)識(shí):標(biāo)識(shí)唯一對(duì)象的屬性,如“ ID”,“名稱”和“類” 。

            基于DOM的識(shí)別:利用DOM屬性來(lái)識(shí)別web應(yīng)用程序?qū)ο蟆?/p>


          特點(diǎn)

          圖像識(shí)別

          OCR對(duì)象

          本地對(duì)象

          DOM對(duì)象

          對(duì)象識(shí)別的復(fù)雜度

          容易

          容易

          中等

          中等

          對(duì)象維護(hù)工作



          容易

          中等

          跨設(shè)備支持


          中等

          容易

          容易

          執(zhí)行中的識(shí)別速度

          中等

          中等

          中等


            結(jié)論
            通過(guò)在移動(dòng)應(yīng)用程序測(cè)試中使用自動(dòng)化測(cè)試,測(cè)試團(tuán)隊(duì)可以在保持質(zhì)量和減少將產(chǎn)品推向市場(chǎng)時(shí)間的同時(shí)降低成本。
            許多工具可用來(lái)支持移動(dòng)設(shè)備自動(dòng)化測(cè)試。選擇正確的工具需要理解業(yè)務(wù)需求和移動(dòng)測(cè)試獨(dú)有的因素。
            權(quán)衡手機(jī)模擬器和真實(shí)設(shè)備的優(yōu)劣,企業(yè)的最佳移動(dòng)測(cè)試解決方案往往不是只選擇其中一個(gè),而是選擇結(jié)合這兩者。

          posted on 2014-05-20 10:22 順其自然EVO 閱讀(609) 評(píng)論(0)  編輯  收藏 所屬分類: android

          <2014年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 西峡县| 永德县| 兴业县| 东台市| 桐庐县| 巴林右旗| 杭锦后旗| 宜城市| 内江市| 渭源县| 扶余县| 永新县| 罗平县| 通辽市| 湖口县| 郯城县| 芜湖县| 赤壁市| 饶河县| 平潭县| 通海县| 邛崃市| 河间市| 科技| 滨海县| 邵武市| 常熟市| 承德县| 达孜县| 岳阳县| 肥东县| 北宁市| 乌拉特前旗| 昌都县| 偏关县| 舒兰市| 婺源县| 聂拉木县| 兴安盟| 雷波县| 肥西县|