林偉紅
【摘 要】21世紀(jì)已進(jìn)入信息化高速發(fā)展的時(shí)期,各行各業(yè)已步入了電子化階段。在信息科技發(fā)展的形勢(shì)下,計(jì)算機(jī)的應(yīng)用領(lǐng)域也愈來(lái)愈廣泛,計(jì)算機(jī)軟件的開(kāi)發(fā)、測(cè)試、維護(hù)等問(wèn)題突出,軟件產(chǎn)品日益更新,不斷適應(yīng)市場(chǎng)化的需求。計(jì)算機(jī)軟件的測(cè)試能夠提高軟件的可靠性,更好的服務(wù)于市場(chǎng)。本文探討計(jì)算機(jī)軟件的測(cè)試方法,分析測(cè)試的具體步驟及注意事項(xiàng),通過(guò)嚴(yán)謹(jǐn)?shù)臏y(cè)試,保證軟件的安全有效運(yùn)行。
【關(guān)鍵詞】計(jì)算機(jī)軟件;測(cè)試;方法與分析
面對(duì)激烈的市場(chǎng)競(jìng)爭(zhēng),很多軟件開(kāi)發(fā)商為了能占領(lǐng)一席之地,對(duì)軟件進(jìn)行各種升級(jí)更新、測(cè)試與維護(hù),最終的目的是把自己的軟禁推向市場(chǎng),從而更好的為社會(huì)服務(wù),也獲取最大的經(jīng)濟(jì)效益。沒(méi)有經(jīng)過(guò)測(cè)試的軟件,很大程度上面臨質(zhì)量不佳、運(yùn)行風(fēng)險(xiǎn),對(duì)企業(yè)造成負(fù)面影響,影響企業(yè)地位和信譽(yù)。特別是一些關(guān)鍵的核心軟件,如醫(yī)療衛(wèi)生系統(tǒng)軟件、訂票系統(tǒng)軟件、銀行結(jié)算軟件等,如果沒(méi)有進(jìn)行嚴(yán)格的事前檢測(cè),造成的后果將不堪設(shè)想,所以,計(jì)算機(jī)軟件的測(cè)試則是一個(gè)很重要的環(huán)節(jié),必須引起重視,對(duì)軟件進(jìn)行測(cè)試評(píng)估,保證軟件的運(yùn)行質(zhì)量。
1.計(jì)算機(jī)軟件測(cè)試的方法分析
軟件測(cè)試作為計(jì)算機(jī)工程的一個(gè)重要環(huán)節(jié),是提高軟件質(zhì)量的保障,軟件的測(cè)試需要很強(qiáng)的邏輯性。關(guān)于計(jì)算機(jī)軟件測(cè)試的方法分類(lèi),目前主要有四種:即靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試、黑盒測(cè)試、白盒測(cè)試。
1.1靜態(tài)測(cè)試
所謂靜態(tài)測(cè)試指的是不執(zhí)行計(jì)算機(jī)程序代碼來(lái)尋找程序代碼中的問(wèn)題與錯(cuò)誤,這一過(guò)程需要人工手動(dòng)進(jìn)行,或者借助其他工具完成。
1.2動(dòng)態(tài)測(cè)試
所謂動(dòng)態(tài)測(cè)試指的是在計(jì)算機(jī)的實(shí)際運(yùn)行中,測(cè)試軟件的程序,對(duì)程序的真實(shí)情況、發(fā)生動(dòng)態(tài)進(jìn)行分析和處理的過(guò)程。
1.3黑盒測(cè)試
黑盒測(cè)試指的是根據(jù)軟件產(chǎn)品的功能,通過(guò)檢測(cè)的方式對(duì)每一部分的功能進(jìn)行檢測(cè),從而檢測(cè)軟件是否正常使用,黑盒測(cè)試的理念是把測(cè)試系統(tǒng)看成一個(gè)黑盒,通過(guò)外界輸入的方式,在輸出檢測(cè)結(jié)果,從而得出結(jié)論的過(guò)程。黑盒測(cè)試的主要優(yōu)點(diǎn)在于:簡(jiǎn)單容易操作,不需要很復(fù)雜的內(nèi)部代碼,測(cè)試與計(jì)算機(jī)軟件的內(nèi)部沒(méi)有很大關(guān)系,從用戶(hù)的角度出發(fā),很容易解決問(wèn)題的發(fā)生,功能的實(shí)現(xiàn)等。而且黑盒測(cè)試在自動(dòng)化測(cè)試中也很方便。黑盒測(cè)試起著重要的不可替代的作用。隨著軟件開(kāi)發(fā)平臺(tái)及軟件設(shè)計(jì)思想的進(jìn)步和發(fā)展, 對(duì)黑盒測(cè)試提出了更明確的要求。人們發(fā)現(xiàn), 必須遵循一定的測(cè)試?yán)碚摚?依賴(lài)優(yōu)秀的測(cè)試工具, 才能進(jìn)行科學(xué)、完善的測(cè)試。
1.4白盒測(cè)試
白盒測(cè)試也被稱(chēng)作結(jié)構(gòu)測(cè)試或者邏輯測(cè)試, 可以查閱被測(cè)代碼內(nèi)容的測(cè)試工作。但是需要知道程序的內(nèi)部設(shè)計(jì)結(jié)構(gòu)、具體代碼, 并根據(jù)基礎(chǔ)程序來(lái)設(shè)計(jì)測(cè)試。白盒測(cè)試的優(yōu)勢(shì)在于測(cè)試用例在代碼上什么地方被忽略。幫助軟件測(cè)試人員增大代碼覆蓋率, 提高代碼質(zhì)量, 發(fā)現(xiàn)代碼隱藏問(wèn)題。
2.計(jì)算機(jī)軟件測(cè)試的手段分析
2.1 web網(wǎng)站測(cè)試手段
隨著網(wǎng)絡(luò)系統(tǒng)的普及,基于internet的瀏覽器、服務(wù)器結(jié)構(gòu)的大型應(yīng)用軟件越來(lái)越多,一套軟件應(yīng)用系統(tǒng)是否可以承受大量數(shù)據(jù),向多個(gè)用戶(hù)同時(shí)間訪問(wèn),并且用戶(hù)不會(huì)感覺(jué)反應(yīng)慢、系統(tǒng)失靈、登陸不上等狀況。如果采用模似實(shí)際情況,找若干臺(tái)電腦和同樣數(shù)目的操作人員在同一時(shí)刻進(jìn)行操作,后拿秒表記錄下反應(yīng)時(shí)間,這樣的手工作坊式的測(cè)試方法不切實(shí)際,還無(wú)法捕捉程序內(nèi)部放入變化情況,所以就需要壓力測(cè)試工具。測(cè)試的基本方略是自動(dòng)負(fù)載測(cè)試,即通過(guò)在一臺(tái)或幾臺(tái)機(jī)上模擬成百或上千的虛似用戶(hù),同時(shí)執(zhí)行業(yè)務(wù),對(duì)應(yīng)用程序進(jìn)行系統(tǒng)測(cè)試的過(guò)程。工具還可以同時(shí)記錄每一事務(wù)處理的時(shí)間,中間服務(wù)的峰值數(shù)據(jù),數(shù)據(jù)庫(kù)的狀態(tài)。主要測(cè)試包括交易處理性能指標(biāo)、資源監(jiān)控。其中交易處理性能指標(biāo)包括交易結(jié)果,每分鐘交易數(shù)、交易響應(yīng)時(shí)間, 最小服務(wù)的響應(yīng)時(shí)間,平均服務(wù)的響應(yīng)時(shí)間, 最大服務(wù)的響應(yīng)時(shí)間等。壓力測(cè)試的過(guò)程, 即逐漸增加負(fù)載,直到系統(tǒng)瓶頸或不能接收的性能點(diǎn),通過(guò)綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來(lái)確定系統(tǒng)并發(fā)性能的過(guò)程,最后由測(cè)試工具自動(dòng)生成測(cè)試報(bào)告與測(cè)試結(jié)論。
2.2測(cè)試工具選擇
目前市場(chǎng)上的性能測(cè)試工具種類(lèi)很多,可簡(jiǎn)單劃分為以下幾種:負(fù)載壓力測(cè)試工具、資源監(jiān)控工具、故障定位工具。負(fù)載性能測(cè)試工具的原理通常是通過(guò)錄制,回放腳本,模擬多用戶(hù)同時(shí)間訪問(wèn)被測(cè)試系統(tǒng),制造負(fù)載,產(chǎn)生并記錄各種性能指標(biāo),生成分析結(jié)果,從而完成測(cè)試的任務(wù)。
主流負(fù)載測(cè)試工具的主要內(nèi)容是偏寫(xiě)測(cè)試腳本,腳本中一般包括用戶(hù)常用的功能,然后運(yùn)行腳本, 得出報(bào)告。
3.計(jì)算機(jī)軟件測(cè)試的過(guò)程分析
3.1測(cè)試的計(jì)劃
測(cè)試計(jì)劃就是定義一個(gè)測(cè)試項(xiàng)目的過(guò)程, 確定各測(cè)試階段的目的和策略, 以便能夠正確地度量和控制測(cè)試。這個(gè)過(guò)程將輸出測(cè)試計(jì)劃文檔,明確要完成的測(cè)試過(guò)程的每一個(gè)階段提供清楚的目標(biāo)。
3.2測(cè)試的項(xiàng)目設(shè)計(jì)
測(cè)試設(shè)計(jì)是在軟件開(kāi)發(fā)設(shè)計(jì)階段進(jìn)行的測(cè)試工作,需要被測(cè)方提供較規(guī)范的軟件需求規(guī)格說(shuō)明、 概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)。測(cè)試設(shè)計(jì)是測(cè)試過(guò)程中最重要的階段。在這個(gè)過(guò)程中將定義測(cè)試用例, 測(cè)試用例的設(shè)計(jì)對(duì)整個(gè)測(cè)試工作的成敗起了決定性的作用。測(cè)試項(xiàng)的設(shè)計(jì)步驟分為以下幾步:首先是 測(cè)試項(xiàng)的設(shè)計(jì)分析式樣,使用各種技法、矩陣、錯(cuò)誤的推測(cè)設(shè)計(jì)測(cè)試項(xiàng)。其中具體的技法會(huì)在后面做詳細(xì)介紹。
其次是結(jié)果確認(rèn)的討論。測(cè)試項(xiàng)組合/ 重復(fù)的刪除。從測(cè)試項(xiàng)中刪除將沒(méi)有依存關(guān)系的內(nèi)容組合起來(lái)進(jìn)行測(cè)試的項(xiàng)目。,刪除根據(jù)多種測(cè)試技法做成的測(cè)試項(xiàng)中的重復(fù)項(xiàng)目。再次是測(cè)試項(xiàng)目的review有沒(méi)有無(wú)效的測(cè)試項(xiàng), 有沒(méi)有重復(fù)的測(cè)試項(xiàng), 測(cè)試項(xiàng)是否有遺漏,結(jié)果確認(rèn)方法是否妥當(dāng)。
3.3測(cè)試的準(zhǔn)備
測(cè)試準(zhǔn)備階段是在測(cè)試實(shí)施之前,構(gòu)造測(cè)試計(jì)劃中說(shuō)明的執(zhí)行測(cè)試所需的要素,這些要素通常包括驅(qū)動(dòng)程序、測(cè)試數(shù)據(jù)集、實(shí)際執(zhí)行測(cè)試所需的軟件; 同時(shí)為每個(gè)測(cè)試過(guò)程選擇適當(dāng)?shù)臏y(cè)試用例; 準(zhǔn)備測(cè)試環(huán)境和測(cè)試工具。
3.4測(cè)試的實(shí)施
按照測(cè)試計(jì)劃, 使用測(cè)試用例對(duì)待測(cè)項(xiàng)目進(jìn)行逐一的、詳細(xì)的測(cè)試。將獲得的運(yùn)行結(jié)果與其他結(jié)果進(jìn)行比較、分析和評(píng)估, 判斷軟件是通過(guò)了每項(xiàng)測(cè)試還是失敗, 確定開(kāi)發(fā)過(guò)程中將要進(jìn)行的下一步工序; 同時(shí)記錄、跟蹤和管理軟件缺陷。在每個(gè)測(cè)試執(zhí)行之后, 對(duì)發(fā)現(xiàn)的錯(cuò)誤都要進(jìn)行相應(yīng)的修改。當(dāng)軟件修改以后, 必須運(yùn)行原有的全部測(cè)試用例重新測(cè)試, 并驗(yàn)證測(cè)試結(jié)果, 這樣可確保修改后軟件的正確性和質(zhì)量。應(yīng)定期進(jìn)行回歸測(cè)試, 看該錯(cuò)誤是否會(huì)重新出現(xiàn)?;貧w測(cè)試是確認(rèn)已測(cè)試的問(wèn)題已不再存在的一項(xiàng)工作, 每進(jìn)行完一個(gè)階段應(yīng)檢查執(zhí)行結(jié)果與測(cè)試計(jì)劃或測(cè)試設(shè)計(jì)文件中是否存在差異。若存在差異就應(yīng)針對(duì)差異進(jìn)行適度的調(diào)整, 可能是修改測(cè)試設(shè)計(jì)文件的內(nèi)容及測(cè)試計(jì)劃的進(jìn)度、安排等各種情況。
3.5測(cè)試的報(bào)告
將測(cè)試執(zhí)行階段得到的測(cè)試結(jié)果進(jìn)行測(cè)試分析和匯總,測(cè)試觀點(diǎn)是否有遺漏,結(jié)果確認(rèn)方法是否妥當(dāng),依次評(píng)定測(cè)試用例、測(cè)試項(xiàng)、軟件總體質(zhì)量等級(jí)。如果必要, 還應(yīng)該組織專(zhuān)家評(píng)議, 最終得到測(cè)試報(bào)告。測(cè)試分析報(bào)告的結(jié)構(gòu)可以參考計(jì)算機(jī)軟件產(chǎn)品開(kāi)發(fā)文件編制指南。
3.6測(cè)試包整理
開(kāi)發(fā)結(jié)束后, 整理測(cè)試包以便于下期開(kāi)發(fā)時(shí)用來(lái)進(jìn)行降級(jí)測(cè)試。軟件測(cè)試是通過(guò)使用各種方法, 黑盒或白盒方法發(fā)現(xiàn)錯(cuò)誤,分析錯(cuò)誤,找到錯(cuò)誤的分布特征和規(guī)律,從而幫助項(xiàng)目管理人員、開(kāi)發(fā)人員發(fā)現(xiàn)當(dāng)前所采用的軟件開(kāi)發(fā)過(guò)程中缺陷, 以便改進(jìn)。同時(shí)也能夠通過(guò)設(shè)計(jì)有針對(duì)性的檢測(cè)方法,改善軟件測(cè)試的有效性。完整的軟件測(cè)試不僅可以給軟件進(jìn)行一個(gè)正確的評(píng)價(jià),而且是提高軟件重要的方法之一。
【參考文獻(xiàn)】
[1]馬瑞芳,王會(huì)燃.計(jì)算機(jī)軟件測(cè)試方法的研究[J].小型微型計(jì)算機(jī)系統(tǒng),2003,(12).
[2]劉竹林.我國(guó)計(jì)算機(jī)軟件測(cè)試現(xiàn)狀分析[J].華南金融電腦,2004,(09).
[3]呂雄津.淺談?dòng)?jì)算機(jī)軟件測(cè)試技術(shù)與保護(hù)技術(shù)[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2012,(09).
[4]劉皓,李長(zhǎng)命.軟件測(cè)試簡(jiǎn)述與展望[J].江蘇現(xiàn)代計(jì)量,2008,(01).
[5]陳琳,陳瑋.軟件測(cè)試中設(shè)計(jì)技法與測(cè)試過(guò)程的研究[J].現(xiàn)代電子技術(shù),2006,(08).
[6]楊小龍.基于軟件質(zhì)量的測(cè)試方法與分析[J].質(zhì)量探索,2009,(05).