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