作者/張麗輝,上海龍旗科技股份有限公司
隨著科技社會的發(fā)展,手機與我們的生活息息相關,已經到了密不可分的地步了,手機扮演著多元的角色,手機行業(yè)的發(fā)展已經改變了我們生活的方方面面。在軟件測試的工程中,軟件測試一般是用來優(yōu)化軟件的重要可靠手段。實際實踐證明了未經過測試的或未充分測試的軟件是不能直接作為發(fā)布產品的,如果發(fā)布,可能會大概率存在安全隱患,甚至導致無法挽回的災難。在形式化的方法和程序的正確性證明技術還未實用的狀態(tài)下,軟件測試在未來的相當一段時間里是保證軟件的可靠性和有效避免其出問題的最重要的方法。從當前國內的手機軟件的形式來看,因為禁言不足的原因,國內的手機軟件測試還是處于比較基礎的階段,對手機軟件測試的理解也不夠透徹,投入的精力不夠,因而很難去制定出一套詳細的手機軟件測試的標準來完成手機軟件測試工作。
在進行需求分析的時候,軟件測試人員既要明確知道客戶的需求的同時,還要收集軟件測試的相關信息,評估開發(fā)的風險和明確相應測試對策,做好測試項目的變更管理,并要求組織軟件測試的工程師參加軟件的需求調研和需求評審活動。對于手機產品的測試分析,不僅是完成客戶們的要求,而是從終端用戶對于手機的需求和市場上的手機原型,對其的需求來進行修改完善。
在軟件設計分析這個階段中,最主要的工作就是把軟件需求作為依據,把測試的范圍和重點劃出來,并針對其完成測試制定計劃。
測定計劃需要注意的事項:①規(guī)定手機軟件測試的可測量及完成測試的目標。②接收標準。③計劃用來測試的資源和工具,測試的過程中軟、硬件以及人力資源的分配和測試平臺。④軟件測試時負責人和開發(fā)人員溝通好,在軟件穩(wěn)定下來時候再開始進行測試等一系列操作。⑤根據軟件的要求和軟件周期的安排,計劃要完成測試階段的哪一些測試(功能、并發(fā)、壓力測試),并指定每種測試必須達到的標準。⑥定下測試任務暫定的水準和再啟動的要求。⑦測試任務和進度。
該階段是手機軟件測試中比較重要的,需要保證手機的質量。在這個階段里,手機軟件所需的文檔和軟件結構的分析基本完成了。測試工程師需要把所有的分析文檔、詳細設計文檔及該有的測試用例庫作為測試來源。就拿安卓的例子來說,安卓系統(tǒng)可以實現(xiàn)多任務的,可以一起測試這些項目,但這個測試不僅能減少時間,同時還可以測試手機的兼容程度。在市場上存在著很多個安卓的版本,最消耗時間的項目莫過于把不同的手機與不同版本的安卓系統(tǒng)的兼容性進行測試。如果測試員發(fā)現(xiàn)了錯誤要及時糾正和修改,以達到減少損失的目的。
在測試一款產品的時候,寫的測試中要與需求上有一定的關聯(lián),這就需要考慮到涉及到了交互測試。這樣測試用例不會與某一款產品產生比較緊密的關聯(lián),這樣就可以在不同的平臺上創(chuàng)造出更多不一樣的手機,進而削減了勞動力、縮短了開發(fā)的周期,最后降低了商業(yè)成本,從而實現(xiàn)提高產品的商業(yè)價值和有效勞動力[2]。然而有很多問題都是由于硬件不同而引起的,所以不同的硬件就要有不一樣的側重點。
就是軟件的編碼和單元模塊測試階段,首先就是單元測試,軟件是由許許多多個單元組成的。這個測試的目的就是把各個存在錯誤和不足的單元給找出來,第一步就是靜態(tài)人工檢測,這個是通過代碼的審查,將編寫中存在的錯誤給找出來。這個完成之后,對其就行動態(tài)追蹤,通過對代碼的運行,把單元也運行起來,這樣就可以有效地避免執(zhí)行程序過程中出現(xiàn)錯誤[1];然后就進行集成測試,對著所需要的要求,把單元都組裝起來,形成一個子系統(tǒng)并對其進行測試。
在測試用例都測試完成后,要有相關人員進行審查來確定是否可以進行下一個步驟環(huán)節(jié)了。另外還有兼容性測試,除了這個,在對系統(tǒng)的測試中,還需要進行其功能測試、手機性能測試、系統(tǒng)的強度測試、負載測試等等,在測試中要及時修正所發(fā)現(xiàn)的錯誤。
系統(tǒng)測試的主要內容:① 功能性的測試。② 手機常規(guī)性能測試。在正常的軟硬件條件下不對其施加任何壓力,來驗證手機是否可以正常工作。③ 手機系統(tǒng)的強度測試。④ 交互測試。手機軟件相對于來說是一個比較復雜的系統(tǒng)如果只靠對基本功能的測試是可能達不到要求的,終端用戶在某些偶然的條件下可能會打開很多個應用app,這就是產生了交互測試。
系統(tǒng)測試是手機軟件測試中最為關鍵的一個環(huán)節(jié),在此階段中進行時間最長發(fā)現(xiàn)的問題最多,其中的流程關鍵而繁瑣。在此過程中,軟件測試的負責人必須分析測試工作的結果,確定測試工作的順序和嚴謹性。
在整個手機軟件測試的過程中,軟件測試的負責人根據軟件測試定制的暫停的基礎原則,來判定測試動作是否已經達到了暫停的標準。與此同時,負責人要完成手機軟件測試的報告。主要報告這次此時所用的軟硬件的版本,測試做了哪些工作、花了多長的時間、測試中發(fā)現(xiàn)了什么樣的問題、還剩下多少問題沒有解決等等,然后依據一定的評分標準,為測試的結果進行評估并進行上報。
通過測試專業(yè)團隊的檢測,確定產品是否可以用來進行正式的發(fā)布,如果評估不合格可能還要重新返還進行重做再進行評估直到評估通過為止。最后由公司質保部門或者軟件定制組織進行確認是不是完成規(guī)定里需要的所有功能并確定能否發(fā)布。
在整個的測試過程中,確定測試是最后一個步驟而且十分重要,它決定著一個產品的命運,是否能正式發(fā)布。在手機軟件生產過程中往往會遇到客戶會對軟件需求的改變,所以在正式的發(fā)布之前都要由客戶確認了所有的需求,才能避免發(fā)布會后蒙受重大的損失。
測試軟件的最主要的目的就是發(fā)現(xiàn)軟件所出現(xiàn)的問題,所以編寫錯誤報告是一個至關重要的工作項目。通過這個報告的正確指引,可以使開發(fā)人員少走一些彎路、少花一些不必要的時間、節(jié)省更多的精力,準確而快速地定位到問題出現(xiàn)在哪兒,進而對出現(xiàn)的問題采取一些必要措施去解決這個問題。在進行撰寫錯誤報告的時候,要保證錯誤報告的客觀性以及全面性[3]。在報告中發(fā)現(xiàn)錯誤很重要,甚至可以查出問題的根本所在。所以不能輕視錯誤報告的重要性。
現(xiàn)在的手機中功能越來越多樣化,使得回歸測試的工作量變得越來越大,并且測試中經常碰到的工作的重復性挺大的,如果是測試員手動執(zhí)行的話比較費力,容易讓測試員感覺到枯燥乏味進而產生疲倦感甚至疲倦心理,很容易造成遺漏。有一套自動測試的設備的話可以大大提高測試效率。
為了能保證測試計劃能夠高效且順利的完成,測試監(jiān)控則是一個重要的手段和保證。負責人應加強對測試的監(jiān)控力度,確保測試工作不出現(xiàn)任何差錯,如果及時發(fā)現(xiàn)錯誤要盡快修正。負責人應該在每個階段的開始的時候,根據計劃的管理來進行控制監(jiān)控測試的工作[4]。
對手機來說,測試可以說是非常重要的步驟。測試是否合格直接影響到它的發(fā)布。對于手機軟件測試的過程中存在許許多多的不規(guī)范操作流程,在開發(fā)的過程中需求經常有所變化,同時測試人員的經驗也不夠豐富和不夠了解軟件的情況,從而使得工作繁瑣且測試效率不高并且浪費了大量時間和精力,測試過程中執(zhí)行控制力較差,造成測試的工作質量低下,進而增加了軟件的生產成本。通過規(guī)范測試流程,能夠提高軟件測試的效率和質量,從而提高軟件的質量和降低軟件生產和維護的成本。加強對測試員的要求水準,多培訓其有關手機軟件測試的課程,鼓勵測試員自己去摸索和開拓創(chuàng)新。將軟件中存在的錯誤和缺陷盡早找出來并進行優(yōu)化和修復,保證軟件在后續(xù)運行的過程中不會出現(xiàn)和質量相關的問題,避免出現(xiàn)巨大的損失。對于我國手機軟件測試的發(fā)展,本文還是給出了一些關于手機測試可供借鑒的方案。實踐是檢驗真理的唯一標準,真正的還是需要在工作中自己去摸索和發(fā)現(xiàn),然后結合一定的測試經驗,從而將測試的水準提高很多。
* [1] 杜梅,劉丙利.淺析提高軟件測試效率的方法[J].科技信息,2011(15)
* [2]李慶義.軟件測試領域知識管理技術的應用[J].軟件導刊 .2012(02):18—19
* [3]李香平,楊兆選.基于虛擬線的交通新算法[J].電子測量與儀器學報,2005,19(4):3033.
* [4]崔立尉.手機軟件測試的實踐探討[J].電子制作2013(24):59