“邊開發(fā)邊測試”給測試帶來的變化
近期,為了對外縮短發(fā)布周期,對內(nèi)建立更加快速的反饋機(jī)制,我們團(tuán)隊(duì)全面嘗試了從“先開發(fā)后測試”到“邊開發(fā)邊測試”的轉(zhuǎn)變。在此過程中,我感到測試用例設(shè)計(jì)和評審、測試執(zhí)行兩個(gè)活動(dòng)需要做出一定的調(diào)整。
1、測試用例設(shè)計(jì)和評審:從時(shí)間驅(qū)動(dòng)轉(zhuǎn)變?yōu)橛脩艄适买?qū)動(dòng)
當(dāng)開發(fā)和測試順序執(zhí)行時(shí),我們的功能測試計(jì)劃會(huì)指定測試用例設(shè)計(jì)和評審時(shí)間。當(dāng)開發(fā)和測試并行時(shí),我們不再以時(shí)間的維度來計(jì)劃測試用例的設(shè)計(jì)和評審,而是以用戶故事的維度。我稱這一轉(zhuǎn)變?yōu)?#8220;從時(shí)間驅(qū)動(dòng)的測試用例設(shè)計(jì)和評審轉(zhuǎn)為用戶故事驅(qū)動(dòng)”。“用戶故事驅(qū)動(dòng)的測試用例設(shè)計(jì)和評審”有兩個(gè)要點(diǎn):(1)以用戶故事的優(yōu)先級來確定測試用例設(shè)計(jì)的優(yōu)先級;(2)配合開發(fā)節(jié)奏,以一個(gè)或多個(gè)用戶故事為批次,多次分批進(jìn)行測試用例評審。為了讓團(tuán)隊(duì)對測試用例設(shè)計(jì)的進(jìn)度有一個(gè)直觀的了解,我們?yōu)槊總€(gè)用戶故事創(chuàng)建了一個(gè)設(shè)計(jì)測試用例的任務(wù)。
2、測試執(zhí)行
(1)從廣度優(yōu)先轉(zhuǎn)變?yōu)樯疃葍?yōu)先
以前的測試我們會(huì)安排多個(gè)輪次,每個(gè)輪次的測試重點(diǎn)和方法都有所變化。而現(xiàn)在再也沒有測試輪次的概念了,因?yàn)槌嘶貧w測試期間,基本都是每日構(gòu)建,有什么測什么。那么這樣的變化要求測試人員怎樣調(diào)整測試執(zhí)行呢?我認(rèn)為是要把“回鍋肉”模式變?yōu)?#8220;煮飯”模式。“回鍋肉”模式是先把五花肉煮個(gè)八成熟(類似我們先把某個(gè)用戶故事測試完成),然后再和大蒜等配料一起回到鍋里炒,并最終裝盤(類似我們通過回歸測試最后確保所有功能在一起工作正常,然后發(fā)布)。“煮飯”模式是“一灶火把飯煮熟”,因?yàn)閵A生飯?jiān)僦笥掷速M(fèi)時(shí)間又不好吃。這類似我們的測試要圍繞該用戶故事盡量一次測試充分,而不要象以前因?yàn)橹篮罄m(xù)還有多輪測試而有意識地推遲某些當(dāng)前就可以做的測試。從某種程度上說,是要把廣度優(yōu)先測試轉(zhuǎn)移到深度優(yōu)先測試。
當(dāng)然,深度優(yōu)先的一個(gè)缺陷在于可能會(huì)忽視用戶故事間的關(guān)系。因?yàn)橛脩艄适碌腎NVEST(Independent,Negotiable,Verifiable,Estimable,Small,Testable)特性,故事間是比較獨(dú)立的。但是由用戶故事構(gòu)成的系統(tǒng)卻不能忽視故事間的內(nèi)在關(guān)聯(lián)。所以,我建議在測試單個(gè)用戶故事之后,在回歸測試之前,盡量穿插一定的用戶場景測試(scenario testing),把在某些用戶場景上自然集成起來的多個(gè)故事一起測試,從而盡早暴露故事間的一些缺陷,彌補(bǔ)深度優(yōu)先測試的不足。當(dāng)然,最后的回歸測試也是對深度優(yōu)先測試的一個(gè)補(bǔ)充。
(2)測試執(zhí)行需要借力于持續(xù)集成
持續(xù)集成不是傳統(tǒng)測試范疇的內(nèi)容,但為了及時(shí)保衛(wèi)勝利果實(shí),對已經(jīng)進(jìn)行過測試之處的正確性和穩(wěn)定性提供必要的及時(shí)的檢查和信心保障,持續(xù)集成不可或缺。邊開發(fā)邊測試的過程中,我們通過集成了自動(dòng)化測試的每日構(gòu)建,及時(shí)發(fā)現(xiàn)了由于版本不斷被修改而造成的意料之外的問題。開發(fā)人員也因?yàn)槟軐⒁疬@些問題的原因及時(shí)鎖定在近期剛剛修改過的內(nèi)容上而加快了修復(fù)一些棘手問題的速度。當(dāng)開發(fā)和測試人員馬不停蹄地向前沖的時(shí)候,持續(xù)集成為我們鞏固了后方。
除了上述兩個(gè)較大的方面,我也隱約感到其它一些方面,如測試進(jìn)度報(bào)告、測試人員心態(tài)的困擾等,也有一些變化,還有更多細(xì)節(jié)需要調(diào)整。所以,我們?nèi)匀恍枰獡肀ё兓瑧?yīng)需而變,持續(xù)調(diào)整和改進(jìn)我們的測試實(shí)踐。
版權(quán)聲明:本文出自 zdlzx 的51Testing軟件測試博客:http://www.51testing.com/?56882
原創(chuàng)作品,轉(zhuǎn)載時(shí)請務(wù)必以超鏈接形式標(biāo)明本文原始出處、作者信息和本聲明,否則將追究法律責(zé)任。
posted on 2012-09-11 09:47 順其自然EVO 閱讀(458) 評論(1) 編輯 收藏 所屬分類: 測試學(xué)習(xí)專欄