敏捷開(kāi)發(fā)中的測(cè)試——SpecDD模型
對(duì)于敏捷開(kāi)發(fā)中的測(cè)試,其實(shí)之前我也是認(rèn)為很有必要的。
對(duì)于一個(gè)敏捷開(kāi)發(fā)過(guò)程(或者按照周博士的話叫做混合型的敏捷開(kāi)發(fā)過(guò)程)而言,我覺(jué)得測(cè)試這個(gè)過(guò)程不是一個(gè)單一的過(guò)程,因?yàn)樗皇侵辉谀骋粋€(gè)階段開(kāi)展的,而是在整個(gè)過(guò)程中無(wú)時(shí)無(wú)刻不見(jiàn)它。
1、需求階段:
當(dāng)一個(gè)需求被設(shè)計(jì)出來(lái)的時(shí)候,測(cè)試就必須介入,做什么事情呢?
第一個(gè)事情,根據(jù)這個(gè)設(shè)計(jì)文檔,開(kāi)始寫測(cè)試用例
第二個(gè)事情,根據(jù)這個(gè)設(shè)計(jì)文檔,結(jié)合用戶的實(shí)際需求,從概念上看是否真的能夠符合客戶的需求(這個(gè)很重要,一旦能夠發(fā)現(xiàn)問(wèn)題,等于給公司減少了非常多的錢,因?yàn)槿绻性O(shè)計(jì)問(wèn)題到最后被發(fā)現(xiàn),那個(gè)時(shí)候開(kāi)發(fā)和測(cè)試已經(jīng)投入多少力量去做了,而且所用的代碼可能會(huì)影響到其他程序的運(yùn)行,要改回來(lái),代價(jià)是很大的。)
2、開(kāi)發(fā)階段:
雖然開(kāi)發(fā)階段是開(kāi)發(fā)人員的事情,但是測(cè)試人員同樣必須介入:
第一個(gè)事情,開(kāi)發(fā)人員完成代碼后,白盒測(cè)試人員需要介入進(jìn)去。
第二個(gè)事情,開(kāi)發(fā)人員進(jìn)行開(kāi)發(fā)時(shí),需要確保他們的開(kāi)發(fā)能否符合測(cè)試用例中的測(cè)試點(diǎn)的要求。(我們知道,測(cè)試人員與開(kāi)發(fā)人員的思想不是很一致,那天周博士也舉了下拉框那個(gè)例子就能很好的說(shuō)明問(wèn)題,所以現(xiàn)在的情況是,測(cè)試人員已經(jīng)提前把很多測(cè)試的點(diǎn)列出來(lái),雖然還有不少點(diǎn)可能會(huì)在實(shí)際測(cè)試中發(fā)現(xiàn),但是開(kāi)發(fā)人員在開(kāi)發(fā)階段如果能把測(cè)試用例中這些測(cè)試點(diǎn)都覆蓋得很好,那么產(chǎn)品質(zhì)量從初期就已經(jīng)在一個(gè)正確的道路上前進(jìn)了。當(dāng)然如果開(kāi)發(fā)人員自顧自,覺(jué)得怎么做就怎么做,到后來(lái)發(fā)現(xiàn)不符合設(shè)計(jì)思想,然后去返工,這種后果造成的影響大家都能想象得到。)
3、測(cè)試階段:
這個(gè)測(cè)試階段的確是傳統(tǒng)上測(cè)試人員拿到產(chǎn)品開(kāi)始測(cè)試的階段,但是它也不是一個(gè)單一的階段,也需要很多不同的階段組成。
第一個(gè)階段:迭代測(cè)試階段
這個(gè)階段中,需要把當(dāng)前迭代中完成的功能進(jìn)行測(cè)試,完成一個(gè)就測(cè)試一個(gè)。在敏捷中,理論上每天都會(huì)有很用的Build讓測(cè)試人員可以測(cè)試,所以一旦一個(gè)功能開(kāi)發(fā)完成了以后,必然我們能夠馬上得到一個(gè)Build開(kāi)展測(cè)試,發(fā)現(xiàn)重要的Bug就可以馬上修復(fù)。
這個(gè)階段非常重要,因?yàn)檫@是一個(gè)造成代價(jià)最小的階段,首先開(kāi)發(fā)剛完成功能,修起B(yǎng)ug來(lái)輕車熟路,另外一點(diǎn),這個(gè)代碼還沒(méi)有被其他一些功能所調(diào)用,所以對(duì)其他地方造成的影響還不會(huì)很大。
所以測(cè)試人員需要在這個(gè)階段投入大量人力去保質(zhì)保量完成。
第二個(gè)階段:多迭代集成測(cè)試階段
當(dāng)幾個(gè)迭代已經(jīng)過(guò)去了,有很多功能已經(jīng)做好了以后,這個(gè)時(shí)候考慮到雖然單個(gè)功能看起來(lái)都還好,但是這么多功能現(xiàn)在都做完了,是不是相互之前會(huì)影響啊,或者對(duì)于穩(wěn)定性造成影響之類的的因素,有必要進(jìn)行多迭代功能集成測(cè)試(也包括了回歸測(cè)試),這種測(cè)試比較多的是在類似Alpha Release,Beta Release的時(shí)候進(jìn)行。
第三個(gè)階段:系統(tǒng)性綜合測(cè)試階段
當(dāng)所有迭代都完成以后,當(dāng)然我們還是需要進(jìn)行一次全方位的測(cè)試(當(dāng)然也包括負(fù)載測(cè)試、性能測(cè)試等),這個(gè)就比較類似傳統(tǒng)那個(gè)測(cè)試階段了,這里就不多說(shuō)了。
我們看得出,測(cè)試這塊在SpecDD中占了很大一個(gè)地位,而且更重要的是,它是一個(gè)不固定的過(guò)程,在SpecDD中幾乎每個(gè)過(guò)程都是需要測(cè)試這個(gè)過(guò)程存在的,所以它被稱之為“流浪漢“也比較貼切,或者叫”濟(jì)公“也不錯(cuò),因?yàn)?#8220;哪里不平哪有我”。
相關(guān)鏈接:
posted on 2013-06-14 10:32 順其自然EVO 閱讀(263) 評(píng)論(0) 編輯 收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄