隨著市場經(jīng)濟的發(fā)展和人們生活水平的提高,手機軟件逐漸變成人們生活的一部分,而基于Android平臺的手機軟件測試,則是軟件開發(fā)中不可缺少的一部分,當前Android平臺具備了越來越好的便利性與快捷性,使用Android平臺的智能手機逐漸獲得市場的肯定,在手機消費者當中占據(jù)了很重要的一部分。在高校的軟件測試課程中對于Android平臺的手機軟件測試的教學與學習將要進行一定的設(shè)計與編排。目前,基于Android平臺的軟件測試是較熱門的行業(yè),而本文則對手機軟件測試流程和策略的教學進行初步的探討。
【關(guān)鍵詞】Android平臺;手機軟件測試流程;教學設(shè)計
1 手機軟件測試流程
1.1 需求分析階段
為了迎合軟件用戶的需求,測試組應該與軟件開發(fā)者一起商討軟件大體規(guī)劃。對軟件的大體側(cè)重點確定一個準度,理解項目的重點和要點,計劃合理的軟件測試,對軟件設(shè)計上存在的不足和不合理進行詳細的修改。
1.2 設(shè)計階段
對軟件的總體布局進行詳細的設(shè)計,這一過程需要軟件設(shè)計師和軟件開發(fā)者共同協(xié)商,對整個開發(fā)的流程,軟件各個部分的細節(jié),以及每個階段的任務都要做出相應的規(guī)劃,最后還要對軟件測試做出規(guī)劃。
1.3 實現(xiàn)階段
軟件編碼與單元模塊測試階段就是實現(xiàn)階段,對手機測試來說,要劃分軟件每個模塊,并且對每個模塊進行測試,測試人員還要編寫測試用例,對部分軟件模塊進行詳細的功能測試。
1.4 循環(huán)測試階段
集成測試開始于在完成幾個模塊的測試之后。一起組合各個模塊,然后測試它們是否能夠正常的運行。集成測試位于單元測試和系統(tǒng)測試之間,起橋梁紐帶作用就是集成測試。隨著迭代的次數(shù)增加,軟件逐漸穩(wěn)定成熟之后,系統(tǒng)測試即為下一步。由獨立測試人員執(zhí)行系統(tǒng)測試,黑盒測試方式是很有效率的方法主要測試系統(tǒng)是否符合“需求規(guī)格說明書”循環(huán)到當測試出來的問題可以被忽略,或者測試中出現(xiàn)的問題穩(wěn)定在一個很小的值時候,系統(tǒng)可以經(jīng)行交付驗收測試,即系統(tǒng)是穩(wěn)定的。
1.5 測試總結(jié)階段
在軟件測試結(jié)束后,需要經(jīng)行測試總結(jié),將測試中出現(xiàn)的問題經(jīng)行總結(jié)和歸納,并找出問題出現(xiàn)的原因。對軟件需求進行回顧,確保下次測試更加具有經(jīng)驗和效率。
2 手機軟件測試關(guān)鍵步驟
2.1 功能測試
功能測試,即對軟件運行情況及運用相關(guān)進行測試。第一,根據(jù)時間,地點,對象,行為和背景特征,做出適當?shù)臏y試程序,例如涉及測試用戶輸入被認為等價劃分,邊界值的分析,回滾場景,測試,如與它們相關(guān)聯(lián)的類型 完全覆蓋。以測試跟蹤的不同階段為目的,及時修正或業(yè)務需要理解錯誤的地方,對測試的準確性進行確保。在對APP 進行功能測試時,不僅僅要顧慮到測試運行、應用的前后臺切換、免登錄,也要考慮到數(shù)據(jù)據(jù)更新、離線瀏覽、APP 更新。
2.2 交互測試
在手機的使用中,用戶打開很多程序是很正常的情況,這就產(chǎn)出了交互測試,正在運行某個應用程序的時候有其他的手機跟他進行交互,這些都表明了交互測試對象交互測試是面向?qū)ο筌浖y試的一個重要環(huán)節(jié)。做好交互測試才能使手機在使用過程中更加流暢
2.3 性能測試
測試手機的反應速度是否達到標準主要依靠性能測試。它通過計算手機在完成一個操作所用的時間來衡量。需要的時間越少,即對手機要求越低,軟件的性能越好,在軟件測試中性能測試是很重要的一點。
2.4 安全測試
檢查軟件中已存在的安全性、安全保密性措施是否有效的測試即為安全測試?;ヂ?lián)網(wǎng)產(chǎn)業(yè)模式下出現(xiàn)的移動平臺備受人們關(guān)注隨著互聯(lián)網(wǎng)的飛速發(fā)展,依托此平臺而生存的APP 的安全性成為人們的焦點。其重點關(guān)注下面幾個方面
(1)軟件權(quán)限: 運行APP 時,要考慮是否會有扣費風險、泄露隱私風險、非法授權(quán)訪問等方面因素。
(2)安裝與卸載的安全性: 在安裝此應用時,是否包括數(shù)字簽名、是否捆綁了其他軟件、是否自啟動、卸載時是否影響其他數(shù)據(jù)的使用等。
(3)數(shù)據(jù)安全性:當APP 處理一些敏感數(shù)據(jù)時,不應以明文形式將數(shù)據(jù)存儲到其它單獨的文件或臨時文件中,對于臨時文件要及時刪除,以免這些數(shù)據(jù)-遭受入侵襲擊、盜用,引起不必要的損失等等。
2.5 UI測試
引起用戶興趣的即是軟件的UI設(shè)計,UI的設(shè)計決定了用戶是否被軟件吸引。UI測試主要關(guān)注用戶界面的布局、風格是否滿足用戶需求,界面文字是否正確、頁面的文字、圖片、色彩搭配是否美觀,操作是否友好等。確保用戶界面通過測試對象的功能來為用戶提供相應的訪問或瀏覽操作,確保用戶界面符合公司或行業(yè)的標準,包括友好的用戶界面、人性化的頁面布局、易操作的功能按鈕等方面就是UI測試的要求。導航測試、圖形測試、內(nèi)容測試,以及軟件在不同屏幕尺寸和分辨率下的測試等等是UI測試的重點。
3 基于Android平臺的自動化測試工具應用
3.1 軟件自動化測試原理和方法
3.1.1 腳本技術(shù)
腳本是一種計算機程序,內(nèi)容包括數(shù)據(jù)和指令。腳本技術(shù),是基于腳本程序結(jié)果設(shè)計的,實現(xiàn)了測試用例的數(shù)據(jù)輸入、操作流程和驗證點要求。軟件自動化測試的腳本,主要有兩種產(chǎn)生方法:由錄制產(chǎn)生并進行修改、編寫腳本語言程序。虛擬用戶技術(shù)
虛擬用戶技術(shù),顧名思義,是指在被測程序上,負加模擬真實用戶的數(shù)量和操作行為的負載,以達到測試系統(tǒng)的性能指標。虛擬用戶技術(shù),主要測量的是系統(tǒng)的響應時間和吞吐量等。
3.1.2 自動比較
自動比較,主要分為靜態(tài)比較和動態(tài)比較、簡單比較和復雜比較、敏感性測試比較和健壯性測試比較,比較過濾器。
3.2 Android軟件自動化測試常用的工具
Robotium是一個基于系統(tǒng)的回歸自動化測試工具:雖然簡化了測試用例的編寫,但是卻能夠編寫出功能強大,健壯性的黑盒測試用例。測試人員能夠運用不僅能夠編寫測試用例,還能夠編寫系統(tǒng)測試,驗收測試方案等此外,能夠跨越多個的進行測試。Monkey測試是自動化測試的重要工具之一。通過使用,可以模擬用戶在手機上的觸摸屏輸入、按鍵輸入等;并且,可以測試設(shè)備在多長時間和多大頻率下會出現(xiàn)異常。是命令行工具,可以在實際設(shè)備中或模擬器上運行,通過向被測試的系統(tǒng)發(fā)送模擬的隨機或者預定的用戶事件流,實現(xiàn)對整個系統(tǒng)或者系統(tǒng)中的某個應用程序的壓力測試。
4 結(jié)語
手機軟件測試是現(xiàn)在軟件行業(yè)較熱門的研究熱點,也是軟件行業(yè)就業(yè)的熱門。手機軟件測試課程的教學將是高校軟件測試課程的研究重點。
作者單位
南京郵電大學通達學院 江蘇省南京市 210003