基于需求的測試分為三個階段:
● 靜態(tài)測試
● 測試設(shè)計
● 驗證覆蓋
接下來讓我?guī)ьI(lǐng)大家一起揭開RBT第一個階段也是最重要的一個階段——靜態(tài)測試的面紗!
【什么是靜態(tài)測試】
靜態(tài)測試是基于期望屬性、專業(yè)經(jīng)驗、通用標(biāo)準(zhǔn)來對工作件的特征進行詳細(xì)檢查的一種測試方法。所謂工作件,也就是靜態(tài)測試的測試對象,是不同種類的產(chǎn)品交付件,即一切項目過程文檔,例如系統(tǒng)設(shè)計說明書、產(chǎn)品需求文檔、開發(fā)設(shè)計文檔(詳細(xì)設(shè)計說明書、數(shù)據(jù)庫設(shè)計說明書)、源代碼以及測試文檔。
【靜態(tài)測試的特質(zhì)】
● 靜態(tài)測試的查錯和分析功能是其他方法所不能替代的。
● 靜態(tài)測試的目的是確保工作件中的缺陷被盡早發(fā)現(xiàn)和處理,盡可能在軟件開發(fā)生命周期的早期階段關(guān)閉缺陷產(chǎn)生的源頭。
● 靜態(tài)測試人員主要是尋找三類缺陷:錯誤,意味著沒有進行正確的改變;遺漏,意味著有些該改變的沒有改變;額外,意味著非有意的改變或增加。
【靜態(tài)測試的好處】
1、靜態(tài)測試有助于緩解測試執(zhí)行階段工作的壓力
傳統(tǒng)測試方法,測試部門的工作往往是前松后緊,工作分配和工作壓力極不平衡。
分析:大家經(jīng)常會聽到測試人員反應(yīng)“現(xiàn)在在測試準(zhǔn)備階段,就是寫寫測試用例,不忙,忙的時候還是測試執(zhí)行的時候,經(jīng)常要加班加點”。造成這種現(xiàn)象的原因就在于,測試人員還只是把測試開發(fā)完成后的“軟件成品“當(dāng)做“測試工作的內(nèi)容”,并不把前期的用于制造軟件的“設(shè)計圖紙”——需求、設(shè)計文檔當(dāng)做測試對象來花時間和精力進行測試。
運用靜態(tài)測試后:
● 加深對項目的理解,使測試計劃和測試設(shè)計質(zhì)量得到提高;
● 使得測試用例全面、有效,從“撞問題”轉(zhuǎn)變?yōu)橛心康牡摹罢覇栴}”
● 提前了對項目的理解,減少了測試執(zhí)行時的摸索時間,從而加快測試進度
● 提前發(fā)現(xiàn)問題,降低缺陷修復(fù)成本、回歸測試成本以及溝通成本,同時降低項目風(fēng)險,減輕測試執(zhí)行時的壓力
2、靜態(tài)測試可有效緩解因工期和人力因素對項目的影響
目前軟件項目普遍都存在:項目周期短和人力資源不足的情況。
分析:在這種情況下,往往會延長開發(fā)時間、壓縮設(shè)計和測試執(zhí)行的時間,以保證項目能如期完成。項目自身抵抗風(fēng)險的能力下降,某些高風(fēng)險的缺陷一旦在測試階段暴露,將可能會導(dǎo)致設(shè)計被推翻,需求被迫變更,大量的代碼重寫和之前測試工作的徒勞,嚴(yán)重影響項目質(zhì)量和項目進度,讓項目陷入惡性循環(huán)。
運用靜態(tài)測試后:
● 提前發(fā)現(xiàn)設(shè)計問題,協(xié)同開發(fā)一起做好功能設(shè)計,避免項目走彎路
● 完善測試設(shè)計,明確描述分歧,細(xì)化處理功能,提高編碼質(zhì)量和測試質(zhì)量
● 一定程度地緩解項目工期壓力和人力資源壓力
3、靜態(tài)測試有助于發(fā)揮測試人員的潛力
傳統(tǒng)的測試是按照需求設(shè)計文檔來驗證程序的問題,沒料到這個”唯一的”“測試依據(jù)”其實很多時候都靠不住,問題叢生,暗含殺機。
分析:當(dāng)測試人員養(yǎng)成完全依賴UC(或者PRD)的習(xí)慣后,變會缺乏主動思考、創(chuàng)新思考的能力。下意識的就把UC和PRD當(dāng)成測試的立足點,以此來驗證軟件產(chǎn)品的質(zhì)量,這樣將導(dǎo)致測試人員發(fā)現(xiàn)的問題質(zhì)量低,問題深度不夠,難以發(fā)現(xiàn)用戶體驗相關(guān)的缺陷,并且容易使測試人員當(dāng)因某個測試問題與開發(fā)意見不一時,爭辯時腰板挺不直,使問題得過且過,喪失測試人員的地位。
運用靜態(tài)測試后:
● 激發(fā)了測試人員的潛力,層層深入業(yè)務(wù)核心,從被動接受,轉(zhuǎn)變?yōu)橹鲃铀伎?,敢于質(zhì)疑設(shè)計,敢于異議架構(gòu)!
● 對測試人員思考和分析能力的鍛煉;
● 姿態(tài)的轉(zhuǎn)變——“客戶的代言人”
4、靜態(tài)測試有助于測試準(zhǔn)備階段對測試人員的績效評估
分析:傳統(tǒng)測試在測試準(zhǔn)備階段,測試經(jīng)理除了通過測試用例對測試人員的工作情況進行評估外,很