最近老聽一些測試的朋友抱怨,說制定出來的測試周期領(lǐng)導(dǎo)是如何如何的不滿意.也有一些朋友私下問我如何來正確的評(píng)估測試周期.我告訴他們,辦法是有的,但必須要做到三個(gè)前提條件.那就是:熟悉測試系統(tǒng),明確測試資源,細(xì)化測試標(biāo)準(zhǔn).
在講這三個(gè)前提前,我們先來了解下什么是測試周期.測試周期是軟件生命周期的一個(gè)階段,他從測試的介入開始,到測試完成結(jié)束.更好理解的講,更切合實(shí)際的講,我們所說的測試周期,就是從領(lǐng)導(dǎo)下達(dá)測試任務(wù)開始,到測試達(dá)到測試通過標(biāo)準(zhǔn)為止,對(duì)產(chǎn)品來說是產(chǎn)品上線,對(duì)項(xiàng)目來說是項(xiàng)目通過驗(yàn)收.(請不要告訴我說是從需求開始,請問你們有幾個(gè)見過可以根據(jù)需求來做測試的需求?)
作為領(lǐng)導(dǎo)他當(dāng)然最關(guān)心測試周期了,因?yàn)樗P(guān)心項(xiàng)目的進(jìn)度和測試的成本,而時(shí)間正是他們所關(guān)心的中心問題,所以說只有合理的,緊湊的,飽滿的時(shí)間安排才符合他們的要求,這就是我為什么說要作好測試周期的估算,必須做到三個(gè)前提條件,這是我們做測試周期估算的前提條件, 也是說服領(lǐng)導(dǎo)我們的測試周期估算是合理的證據(jù).
我們先來看一個(gè)例子,要建筑一棟大樓,那么在建造之前肯定要設(shè)計(jì)好建筑圖紙,然后根據(jù)圖紙能估算出需要多少耗材,需要多少人工和需要多少時(shí)間才能完成,從而就能估算出需要花費(fèi)多少成本.我認(rèn)為我們的測試周期估算也類似.
熟悉測試系統(tǒng)
這正是根據(jù)圖紙來估算需要多少耗材和人工的時(shí)候.一個(gè)系統(tǒng)有多少模塊,有多少功能點(diǎn),甚至每個(gè)功能點(diǎn)要怎么來測試(設(shè)計(jì)多少測試用例才能覆蓋),作為一個(gè)測試組長,測試負(fù)責(zé)人,你都要心中十分清楚.在目前大部分公司沒有需求管理的情況下,這就要求測試負(fù)責(zé)人要付出更多的努力去熟悉測試系統(tǒng).(可能有人會(huì)說,如果系統(tǒng)還沒開發(fā)完成,那怎么來熟悉呢? 哈哈,發(fā)揮你作為測試人員刨根問底的特長吧,反正這部分工作一定要作好).設(shè)想,你前期能了解到系統(tǒng)共有六大模塊,250個(gè)主要功能點(diǎn),細(xì)化為1000個(gè)測試功能點(diǎn),大約需要3000個(gè)用例來覆蓋,那你還不知道有多少工作量嗎? 只要知道有多少測試資源(人工),那么就簡化成一道小學(xué)應(yīng)用題了.
明確測試資源
主要是指,要多少測試人員可以參加,他們的技術(shù)特長和測試經(jīng)驗(yàn)及對(duì)該測試任務(wù)的熟悉程度. 我們要根據(jù)這些來給他們分配工作內(nèi)容和工作量,并且根據(jù)這些來估算他們工作效率.(單位時(shí)間內(nèi)所完成的工作任務(wù)). 現(xiàn)在有1000個(gè)工件需要做,有4個(gè)工人,甲每天做3個(gè)工件,乙每天做4個(gè)工件,丙每天做5個(gè)工件,丁每天做6個(gè)工件,那么問完成1000個(gè)工件總共需要多少天? 問題就這么簡單,前提條件是你要清楚內(nèi)在的因素.
我知道問題遠(yuǎn)沒有那么簡單,有人肯定會(huì)問需求變更了呢?人員調(diào)整了呢?測試中間出現(xiàn)意外呢?要經(jīng)過多倫次測試呢?其他不可預(yù)知的因素影響測試進(jìn)度呢?........疑問很多,但我們還是要面對(duì).
細(xì)化測試準(zhǔn)則
在測試開始之初,我強(qiáng)烈建議做好以下測試準(zhǔn)則:
測試啟動(dòng)標(biāo)準(zhǔn),要求開發(fā)方必須對(duì)主要功能做測試,保證提交過來的測試程序可以測試,不出現(xiàn)不可安裝卸載,功能沒實(shí)現(xiàn)或者存在重大功能缺陷的問題.
通過測試標(biāo)準(zhǔn):測試達(dá)到什么程度,缺陷修復(fù)到什么程度,即可通過測試.一般從BUG的級(jí)別上來判斷(要對(duì)BUG級(jí)別有個(gè)明確的定義哦).
中止測試標(biāo)準(zhǔn):如果測試過程中出現(xiàn)那些問題,就要中止測試.一般指出現(xiàn)不可安裝,功能性重大缺陷導(dǎo)致測試無法進(jìn)行下去.
進(jìn)入下一輪測試標(biāo)準(zhǔn): 如果一輪次測試沒有通過,那么就要進(jìn)入下一輪測試.就是什么情況下,有多少測試用例沒有通過,需要進(jìn)入下一輪測試.
我們在估算測試周期的時(shí)候,需要考慮進(jìn)這些意外事件.我們通過表格簡單說明下:
當(dāng)出現(xiàn)以下情況時(shí),
該內(nèi)容生效.
事件 細(xì)分 需要時(shí)間 測試周期 責(zé)任方?jīng)]有達(dá)到測試提交標(biāo)準(zhǔn) 具體什么原因 開發(fā)方解決問題的時(shí)間 順延 開發(fā)方中止測試 原因 同上 順延 開發(fā)方測試資源變更 測試人員請假,調(diào)崗等 該測試人員剩余工作量的時(shí)間 順延或其他人員頂替 測試方多輪次測試 原因 下一輪測試時(shí)間 啟用下一輪測試周期 開發(fā)方
…. …… …… ….. …….
注:有理由的變更前期的計(jì)劃,這是你應(yīng)該做到的.
說了那么多,還是沒有說明具體怎么來做這個(gè)周期的估算,通過什么手段和工具來做.其實(shí)這個(gè)并不重要,象word ,project,excel等都可以,我都見過類似的摸板.無論你用表格還是樹型圖,還是梯狀圖,只要你能把 工作內(nèi)容,測試資源,時(shí)間三者的關(guān)系表示清楚就可以了.