發(fā)布時(shí)間:2020-06-24
軟件測(cè)試不僅僅只是找錯(cuò)而已,還需要有計(jì)劃的進(jìn)行,同時(shí)大家都知道發(fā)現(xiàn)軟件缺陷越早,修改的成本就越低。那么怎樣才能準(zhǔn)確而又及時(shí)的發(fā)現(xiàn)軟件缺陷,這首先要從軟件生命周期講起。
軟件的生命周期
軟件的生命周期將軟件開發(fā)分為若干個(gè)階段,主要有需求,分析,設(shè)計(jì),編碼,測(cè)試幾個(gè)主要的階段,同時(shí)在RUP的開發(fā)過程中除了這幾個(gè)主要階段外,還對(duì)這些階段進(jìn)行迭代式的開發(fā)。但是我有幾點(diǎn)疑問,測(cè)試難道就必需在開發(fā)后期進(jìn)行嗎。在早期的開發(fā)過程中也許是可以的,但是現(xiàn)在的軟件開發(fā)逐漸由小作坊式的開發(fā)進(jìn)入大規(guī)模的團(tuán)隊(duì)開發(fā),早期介入測(cè)試有助于提早發(fā)現(xiàn)問題,同時(shí)大幅度的降低項(xiàng)目風(fēng)險(xiǎn)有很大的好處。不過如何在早期介入測(cè)試則是一個(gè)很值的討論的問題。下面我們從軟件生命周期詳細(xì)的敘述一下如何介入軟件測(cè)試。
需求,分析階段測(cè)試的結(jié)合
首先我們從軟件生命周期的各個(gè)階段進(jìn)行分析。在需求,分析階段,需求人員會(huì)對(duì)用戶的需求進(jìn)行詳細(xì)的分析,形成產(chǎn)品說明書,如果更好的可以細(xì)化到用例圖,活動(dòng)圖。也就是說我們?cè)谠缙诘男枨蠓治鲭A段就可以介入測(cè)試,確定后期測(cè)試的目標(biāo),如果要求更高點(diǎn)可以進(jìn)一步的進(jìn)行需求測(cè)試,論證需求是否可以滿足用戶的要求,從而減少需求風(fēng)險(xiǎn)。
設(shè)計(jì)階段與測(cè)試的結(jié)合
進(jìn)入設(shè)計(jì)階段,設(shè)計(jì)組成員會(huì)提供詳細(xì)的設(shè)計(jì)文檔,其中主要有時(shí)序圖,協(xié)作圖(狀態(tài)圖),類圖等等。時(shí)序圖向我們展示了用例事件發(fā)生的過程中與系統(tǒng)直接發(fā)生交互的處部參與者,系統(tǒng)(可以看作一個(gè)黑盒)。這時(shí)可以提取出有哪些系統(tǒng)是要進(jìn)行測(cè)試的,可以明確我們黑盒測(cè)試的目標(biāo),而不是在最后再找有哪些系統(tǒng)是要進(jìn)行測(cè)試的。協(xié)作圖可以詳細(xì)的描述出系統(tǒng)狀態(tài)的變化。為一個(gè)大型軟件產(chǎn)品建立狀態(tài)圖是艱苦的事情,既然有大家的勞動(dòng)成果為什么我們測(cè)試不利用呢?前面進(jìn)行的測(cè)試需求是捕捉的都是靜態(tài)的需求,但這里我們可以清晰的看到軟件狀態(tài)的變化,這時(shí)我們就可以針對(duì)各種狀態(tài)分析要測(cè)試的狀態(tài)轉(zhuǎn)換和主要的程序流程來設(shè)計(jì)測(cè)試案例,同時(shí)狀態(tài)的變化有時(shí)也是對(duì)系統(tǒng)接口的交接,這時(shí)設(shè)計(jì)的案例則主要針對(duì)接口優(yōu)先的原則,保證了接口在掛接過程中得到有效的測(cè)試。
編碼階段實(shí)施測(cè)試
到達(dá)編碼階段時(shí),怎樣在早期就可以介入測(cè)試,這要從每日編譯說起,在可能的情況下對(duì)已開發(fā)的功能進(jìn)行每日編譯,形成可測(cè)試的版本,從而讓測(cè)試人員進(jìn)行測(cè)試,這時(shí)前期的工作并沒以白做,這時(shí)我們已經(jīng)有了測(cè)試需求說明書,測(cè)試計(jì)劃書與重要的案例,可以對(duì)它進(jìn)行分配并測(cè)試,這時(shí)至少重要的功能在早期就得到了保障。同時(shí)隨著系統(tǒng)的不斷完善,可以讓各個(gè)功能模塊的測(cè)試人員增加測(cè)試案例,保證測(cè)試的完備性。每日編譯還有個(gè)好處,就是測(cè)出的軟件缺陷可以在當(dāng)天就可以處理,從而保證了把缺陷消滅在早期。這時(shí)測(cè)試與開發(fā)已經(jīng)完美的結(jié)合起來,做到測(cè)試與開發(fā)的同步,并且不相互沖突。
后期測(cè)試
開發(fā)后就是測(cè)試,說到現(xiàn)在這時(shí)你才感到輕松,由于測(cè)試與開發(fā)是同步進(jìn)行的,所以這時(shí)我想你主要進(jìn)行的就是對(duì)開發(fā)過程中發(fā)現(xiàn)的問題的回歸測(cè)試。甚至你可以喝喝咖啡了J,因?yàn)樵诰幋a階段軟件缺陷就發(fā)現(xiàn)差不多了,這時(shí)主要的精力放在集成測(cè)試,性能測(cè)試,兼容性測(cè)試等一些測(cè)試上來,而且這些測(cè)試的標(biāo)準(zhǔn)在需求分析時(shí)就有了,比如性能測(cè)試,它要求的數(shù)據(jù)在需求時(shí)我們就關(guān)注過,有了這些有效的目標(biāo)我們還做不好嗎。
測(cè)試如果與軟件生命周期結(jié)合,可以有效的保證測(cè)試的目標(biāo)和覆蓋率,同時(shí)可以充分利用需求人員,設(shè)計(jì)人員的力量來指導(dǎo)我們的測(cè)試,不過也帶來一些問題,就是實(shí)施的難度,同時(shí)高級(jí)測(cè)試人員對(duì)此要有一定的了解才可能實(shí)施,不過它的好處還是顯而易見的,我們?yōu)槭裁床粐L試著做一下呢,最后祝大家好運(yùn),多多發(fā)現(xiàn)問題,早早發(fā)現(xiàn)問題,寫出高質(zhì)量的軟件。
推薦閱讀:
電話咨詢,400-035-7887,安排專業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢和商務(wù)報(bào)價(jià))。
您的信息已成功提交!
我們的客服人員稍后會(huì)與您聯(lián)系