軟件測(cè)試的組織與管理(二)
作為軟件開發(fā)的重要環(huán)節(jié),軟件測(cè)試越來越受到人們的重視。隨著軟件開發(fā)規(guī)模的增大、復(fù)雜程度的增加,以尋找軟件中的錯(cuò)誤為目的的測(cè)試工作就顯得更加困難。然而,為了盡可能多地找出程序中的錯(cuò)誤,生產(chǎn)出高質(zhì)量的軟件產(chǎn)品,加強(qiáng)對(duì)測(cè)試工作的組織和管理就顯得尤為重要。
從軟件的生存周期看,測(cè)試往往指對(duì)程序的測(cè)試,這樣做的優(yōu)點(diǎn)是被測(cè)對(duì)象明確,測(cè)試的可操作性相對(duì)較強(qiáng)。但是,由于測(cè)試的依據(jù)是規(guī)格說明書、設(shè)計(jì)文檔和使用說明書,如果設(shè)計(jì)有錯(cuò)誤,測(cè)試的質(zhì)量就難以保證。即使測(cè)試后發(fā)現(xiàn)是設(shè)計(jì)的錯(cuò)誤,這時(shí),修改的代價(jià)是相當(dāng)昂貴的。因此,較理想的做法應(yīng)該是對(duì)軟件的開發(fā)過程,按軟件工程各階段形成的結(jié)果,分別進(jìn)行嚴(yán)格的審查。軟件的生命周期可用圖1的流程表示。
為了確保軟件的質(zhì)量,對(duì)圖1的過程應(yīng)進(jìn)行嚴(yán)格的管理。雖然測(cè)試是在實(shí)現(xiàn)且經(jīng)驗(yàn)證后進(jìn)行的,實(shí)際上,測(cè)試的準(zhǔn)備工作在分析和設(shè)計(jì)階段就開始了。
1.測(cè)試的過程及組織
當(dāng)設(shè)計(jì)工作完成以后,就應(yīng)該著手測(cè)試的準(zhǔn)備工作了,一般來講,由一位對(duì)整個(gè)系統(tǒng)設(shè)計(jì)熟悉的設(shè)計(jì)人員編寫測(cè)試大綱,明確測(cè)試的內(nèi)容和測(cè)試通過的準(zhǔn)則,設(shè)計(jì)完整合理的測(cè)試用例,以便系統(tǒng)實(shí)現(xiàn)后進(jìn)行全面測(cè)試。
在實(shí)現(xiàn)組將所開發(fā)的程序經(jīng)驗(yàn)證后,提交測(cè)試組,由測(cè)試負(fù)責(zé)人組織測(cè)試,測(cè)試一般可按下列方式組織:
(1)首先,測(cè)試人員要仔細(xì)閱讀有關(guān)資料,包括規(guī)格說明、設(shè)計(jì)文檔、使用說明書及在設(shè)計(jì)過程中形成的測(cè)試大綱、測(cè)試內(nèi)容及測(cè)試的通過準(zhǔn)則,全面熟悉系統(tǒng),編寫測(cè)試計(jì)劃,設(shè)計(jì)測(cè)試用例,作好測(cè)試前的準(zhǔn)備工作。
(2)為了保證測(cè)試的質(zhì)量,將測(cè)試過程分成幾個(gè)階段,即:代碼審查、單元測(cè)試、集成測(cè)試和驗(yàn)收測(cè)試。
(3)代碼會(huì)審:代碼會(huì)審是由一組人通過閱讀、討論和爭(zhēng)議對(duì)程序進(jìn)行靜態(tài)分析的過程。會(huì)審小組由組長(zhǎng),2~3名程序設(shè)計(jì)和測(cè)試人員及程序員組成。會(huì)審小組在充分閱讀待審程序文本、控制流程圖及有關(guān)要求、規(guī)范等文件基礎(chǔ)上,召開代碼會(huì)審會(huì),程序員逐句講解程序的邏輯,并展開熱烈的討論甚至爭(zhēng)議,以揭示錯(cuò)誤的關(guān)鍵所在。實(shí)踐表明,程序員在講解過程中能發(fā)現(xiàn)許多自己原來沒有發(fā)現(xiàn)的錯(cuò)誤,而討論和爭(zhēng)議則進(jìn)一步促使了問題的暴露。例如,對(duì)某個(gè)局部性小問題修改方法的討論,可能發(fā)現(xiàn)與之有牽連的甚至能涉及到模塊的功說明、模塊間接口和系統(tǒng)總結(jié)構(gòu)的大問題,導(dǎo)致對(duì)需求定義的重定義、重設(shè)計(jì)驗(yàn)證,大大改善了軟件的質(zhì)量。
(4)單元測(cè)試:?jiǎn)卧獪y(cè)試集中在檢查軟件設(shè)計(jì)的最小單位—模塊上,通過測(cè)試發(fā)現(xiàn)實(shí)現(xiàn)該模塊的實(shí)際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯(cuò)誤。由于模塊規(guī)模小、功能單一、邏輯簡(jiǎn)單,測(cè)試人員有可能通過模塊說明書和源程序,清楚地了解該模塊的I/O條件和模塊的邏輯結(jié)構(gòu),采用結(jié)構(gòu)測(cè)試(白盒法)的用例,盡可能達(dá)到徹底測(cè)試,然后輔之以功能測(cè)試(黑盒法)的用例,使之對(duì)任何合理和不合理的輸入都能鑒別和響應(yīng)。高可靠性的模塊是組成可靠系統(tǒng)的堅(jiān)實(shí)基礎(chǔ)。
(5)集成測(cè)試:集成測(cè)試是將模塊按照設(shè)計(jì)要求組裝起來同時(shí)進(jìn)行測(cè)試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。如數(shù)據(jù)穿過接口時(shí)可能丟失;一個(gè)模塊與另一個(gè)模塊可能有由于疏忽的問題而造成有害影響;把子功能組合起來可能不產(chǎn)生預(yù)期的主功能;個(gè)別看起來是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯(cuò)誤等。
(6)驗(yàn)收測(cè)試:驗(yàn)收測(cè)試的目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測(cè)試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是驗(yàn)收測(cè)試的任務(wù),即軟件的功能和性能如同用戶所合理期待的那樣。
經(jīng)過上述的測(cè)試過程對(duì)軟件進(jìn)行測(cè)試后,軟件基本滿足開發(fā)的要求,測(cè)試宣告結(jié)束,經(jīng)驗(yàn)收后,將軟件提交用戶。
相關(guān)推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |