兩種有效的軟件測(cè)試思想
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2011/9/8 14:22:13 ] 推薦標(biāo)簽:
摘要:項(xiàng)目的開發(fā)風(fēng)險(xiǎn)來自于對(duì)需求的誤解,來自于設(shè)計(jì)與開發(fā)過程及產(chǎn)品的缺陷,只有盡早發(fā)現(xiàn)這些缺陷,才能降低并控制項(xiàng)目風(fēng)險(xiǎn);谶@種思想,軟件業(yè)出現(xiàn)了一些新的測(cè)試思路。(據(jù)調(diào)查,測(cè)試中發(fā)現(xiàn)的BUG有56%是來自需求文檔,而這56%的BUG正是由于需求文檔編寫存在問題,不明確、不清晰、不正確所導(dǎo)致的。)
1、測(cè)試驅(qū)動(dòng)開發(fā)。這種測(cè)試思想被近流行的XP(Extreme Programming)極限編程方式所大力提倡。它的基本思想是,通過測(cè)試來為編程做指導(dǎo),在某個(gè)要開發(fā)的需求對(duì)象明確之后,在編碼之前,先進(jìn)行相關(guān)測(cè)試代碼(測(cè)試代碼的內(nèi)容和需求規(guī)格說明書描述是相同的,有人把它稱為“可執(zhí)行的需求規(guī)格說明書”)的編寫工作,完成之后針對(duì)測(cè)試代碼進(jìn)行編程,然后再用測(cè)試程序?qū)﹂_發(fā)代碼進(jìn)行測(cè)試,驗(yàn)證其正確性,若程序通過了測(cè)試,說明它是符合需求規(guī)格說明書要求的。周而復(fù)始,通過這樣的過程,開發(fā)進(jìn)程得以層層深入,直到開發(fā)完成。而這時(shí)單元測(cè)試也基本完成了。
這種測(cè)試方式的大的好處是,盡早地發(fā)現(xiàn)設(shè)計(jì)、開發(fā)中存在的問題,避免傳統(tǒng)開發(fā)模式中的“測(cè)試過程中發(fā)現(xiàn)代碼不能滿足需求而導(dǎo)致的大量返工”。降低項(xiàng)目風(fēng)險(xiǎn);同時(shí)可以盡早地將“半成品”展示給客戶,使客戶對(duì)需求進(jìn)行驗(yàn)證、補(bǔ)充及完善,另外測(cè)試代碼的表達(dá)方式相對(duì)準(zhǔn)確、無二義性,可以降低因需求理解錯(cuò)誤而導(dǎo)致的項(xiàng)目風(fēng)險(xiǎn)。
2、迭代測(cè)試。這種測(cè)試是IBM所推崇測(cè)試方式之一,它從迭代式開發(fā)模式演變而來。在迭代開發(fā)模式中,每個(gè)迭代都包含需求、設(shè)計(jì)、編碼、集成、測(cè)試等過程。在每一次迭代完成之后,便會(huì)開始新的迭代過程。通過一次次迭代的累進(jìn),系統(tǒng)會(huì)增量式集成一些新的功能,直至整個(gè)系統(tǒng)功能的完成。其中,每個(gè)迭代周期的測(cè)試工作由兩方面內(nèi)容構(gòu)成:
* 對(duì)當(dāng)前迭代周期產(chǎn)品的增量測(cè)試。
* 對(duì)前迭代周期已完成功能的回歸測(cè)試。
隨著迭代周期的累進(jìn),測(cè)試工作內(nèi)容隨之不斷變化。早期迭代測(cè)試重點(diǎn)在于新功能的測(cè)試,后期迭代測(cè)試重點(diǎn)在于累積功能的回歸測(cè)試。
有的人不喜歡XP編程的開發(fā)方式,認(rèn)為其沒有明確的階段性劃分,不利于計(jì)劃管理,模式過于靈活,不好掌握。迭代式開發(fā)模式為這些人提供了新的選擇。這種開發(fā)方式繼承了瀑布式開發(fā)模式的優(yōu)點(diǎn)――全面、嚴(yán)謹(jǐn)、有計(jì)劃性、易管理,更重要的是,這種模式將測(cè)試工作分布到每個(gè)迭代周期中,使測(cè)試工作提前進(jìn)行,從而使將發(fā)現(xiàn)軟件缺陷的周期提前,大大降低軟件風(fēng)險(xiǎn)及開發(fā)成本。
它將軟件開發(fā)比喻成制作一桌盛宴,項(xiàng)目經(jīng)理比作大廚,測(cè)試人員比作品嘗師,用戶則比作餐者。為保障飯菜質(zhì)量,上菜之前,先由品嘗師對(duì)滿桌的半成品、準(zhǔn)成品逐個(gè)品嘗,發(fā)現(xiàn)不足的地方要及時(shí)通知大廚進(jìn)行改進(jìn),完善質(zhì)量,直至品嘗師覺得:全部的飯菜已經(jīng)色、香、味俱佳,滿足用戶要求了,才通過審查,允許飯菜上桌,供餐者品嘗。我想說的是:飯菜質(zhì)量靠品嘗師的監(jiān)督,但主要靠的是大廚的技術(shù),同理,軟件的質(zhì)量則是靠各個(gè)項(xiàng)目管理過程的互相配合及項(xiàng)目經(jīng)理的整體控制和把握,測(cè)試只是其中的一份子。所以,請(qǐng)不要將軟件的質(zhì)量都交給測(cè)試過程來承擔(dān),那樣將是“生命不能承受之重”。
相關(guān)推薦
最新發(fā)布
性能測(cè)試之測(cè)試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測(cè)試是從什么時(shí)候開始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動(dòng)化測(cè)試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項(xiàng)目適合做自動(dòng)化?自動(dòng)化測(cè)試人員應(yīng)具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測(cè)試工具測(cè)評(píng)
2020/7/17 8:52:11RPA機(jī)器人能夠快速響應(yīng)企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測(cè)試基本概念是怎么來的?軟件測(cè)試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10