資源描述:
《軟件測(cè)試模型.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、目錄1、V模型22、W模型33、H模型54、?X模型65、其他測(cè)試模型71、瀑布模型82、原型模型93、螺旋模型11背景知識(shí):目前主流的軟件生命周期模型或軟件開(kāi)發(fā)過(guò)程模型有:瀑布模型、原型模型、螺旋模型、增量模型、漸進(jìn)模型、快速軟件開(kāi)發(fā)(RAD)以及Rational統(tǒng)一過(guò)程(RUP)等,這些模型對(duì)于軟件開(kāi)發(fā)過(guò)程具有很好的指導(dǎo)作用,但是在這些過(guò)程方法中,軟件測(cè)試的地位和價(jià)值并沒(méi)有體現(xiàn)出來(lái),也沒(méi)有給軟件測(cè)試以足夠的重視,利用這些模型無(wú)法更好地指導(dǎo)測(cè)試實(shí)踐。軟件測(cè)試是與軟件開(kāi)發(fā)緊密相關(guān)的一系列有計(jì)劃、系統(tǒng)性的
2、活動(dòng),顯然軟件測(cè)試也需要測(cè)試模型去指導(dǎo)實(shí)踐。下面先對(duì)主要的模型做一些簡(jiǎn)單的介紹,再補(bǔ)充軟件生命周期做介紹。1、V模型???V模型是最具有代表性的測(cè)試模型。V模型最早是由PaulRook在20世紀(jì)80年代后期提出的,V模型在英國(guó)國(guó)家計(jì)算中心文獻(xiàn)中發(fā)布,旨在改進(jìn)軟件開(kāi)發(fā)的效率和效果。???在傳統(tǒng)的開(kāi)發(fā)模型中,比如瀑布模型,通常把測(cè)試過(guò)程作為在需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)和編碼全部完成之后的一個(gè)階段,盡管有時(shí)測(cè)試工作會(huì)占用整個(gè)項(xiàng)目周期一半的時(shí)間,但是有人仍認(rèn)為測(cè)試只是一個(gè)收尾工作,而不是主要的工程。V模型是軟
3、件開(kāi)發(fā)瀑布模型的變種,它反映了測(cè)試活動(dòng)與分析和設(shè)計(jì)的關(guān)系,從左到右,描述了基本的開(kāi)發(fā)過(guò)程和測(cè)試行為,明確地標(biāo)明了測(cè)試工程中存在的不同級(jí)別,清楚地描述了這些測(cè)試階段和開(kāi)發(fā)過(guò)程期間各階段的對(duì)應(yīng)關(guān)系。如圖5-1所示。??????????????????圖1?V模型圖???圖1V模型圖中箭頭代表了時(shí)間方向,左邊下降的是開(kāi)發(fā)過(guò)程各階段,與此相對(duì)應(yīng)的是右邊上升的部分,即測(cè)試過(guò)程的各個(gè)階段。???V模型的軟件測(cè)試策略既包括低層測(cè)試又包括了高層測(cè)試,低層測(cè)試是為了確保源代碼的正確性,高層測(cè)試是為了使整個(gè)系統(tǒng)滿足用戶的需
4、求。???V模型指出,單元和集成測(cè)試是驗(yàn)證程序設(shè)計(jì),開(kāi)發(fā)人員和測(cè)試組應(yīng)檢測(cè)程序的執(zhí)行是否滿足軟件設(shè)計(jì)的要求;系統(tǒng)測(cè)試應(yīng)當(dāng)驗(yàn)證系統(tǒng)設(shè)計(jì),檢測(cè)系統(tǒng)功能、性能的質(zhì)量特性是否達(dá)到系統(tǒng)設(shè)計(jì)的指標(biāo);由測(cè)試人員和用戶進(jìn)行軟件的確認(rèn)測(cè)試和驗(yàn)收測(cè)試,追溯軟件需求說(shuō)明書(shū)進(jìn)行測(cè)試,以確定軟件的實(shí)現(xiàn)是否滿足用戶需求或合同的要求。???V模型存在一定的局限性,它僅僅把測(cè)試過(guò)程作為在需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)及編碼之后的一個(gè)階段。容易使人理解為測(cè)試是軟件開(kāi)發(fā)的最后一個(gè)階段,主要是針對(duì)程序進(jìn)行測(cè)試尋找錯(cuò)誤,而需求分析階段隱藏的問(wèn)題
5、一直到后期的驗(yàn)收測(cè)試才被發(fā)現(xiàn)。類比記憶:此模型與軟件開(kāi)發(fā)模式中的線性模型(典型的瀑布模型)有相似的不足,在瀑布模型中,測(cè)試階段處于軟件實(shí)現(xiàn)后,這意味著必須在代碼完成后有足夠的時(shí)間預(yù)留給測(cè)試活動(dòng),否則將導(dǎo)致測(cè)試不充分,開(kāi)發(fā)前期未發(fā)現(xiàn)的錯(cuò)誤會(huì)傳遞并擴(kuò)散到后面的階段,而在后面發(fā)現(xiàn)這些錯(cuò)誤時(shí),可能已經(jīng)很難回頭再修正,從而導(dǎo)致項(xiàng)目的失敗。2、W模型???V模型的局限性在于沒(méi)有明確地說(shuō)明早期的測(cè)試,不能體現(xiàn)“盡早地和不斷地進(jìn)行軟件測(cè)試”的原則。在V模型中增加軟件各開(kāi)發(fā)階段應(yīng)同步進(jìn)行的測(cè)試,被演化為一種W模型,因?yàn)閷?shí)
6、際上開(kāi)發(fā)是V,測(cè)試也是與此相并行的V?;凇氨M早地和不斷地進(jìn)行軟件測(cè)試”的原則,在軟件的需求和設(shè)計(jì)階段的測(cè)試活動(dòng)應(yīng)遵循IEEEstd1012-1998《軟件驗(yàn)證和確認(rèn)(V&V)》的原則。一個(gè)基于V&V原理的W模型示意圖如圖2所示。?????????????????????圖2?W模型圖???相對(duì)于V模型,W模型更科學(xué)。W模型可以說(shuō)是V模型自然而然的發(fā)展。W模型強(qiáng)調(diào)測(cè)試伴隨著整個(gè)軟件開(kāi)發(fā)周期,而且測(cè)試的對(duì)象不僅僅是程序,需求、功能和設(shè)計(jì)同樣要測(cè)試。這樣,只要相應(yīng)地開(kāi)發(fā)活動(dòng)完成,我們就可以開(kāi)始執(zhí)行測(cè)試,可以
7、說(shuō),測(cè)試與開(kāi)發(fā)是同步進(jìn)行的,從而有利于盡早地發(fā)現(xiàn)問(wèn)題。以需求為例,需求分析一完成,就可以對(duì)需求進(jìn)行測(cè)試,而不是等到最后才進(jìn)行針對(duì)需求的驗(yàn)收測(cè)試。???如果測(cè)試文檔能盡早提交,那么就有了更多的檢查和檢閱的時(shí)間,這些文檔還可用于評(píng)估開(kāi)發(fā)文檔。另外還有一個(gè)很大的益處是,測(cè)試者可以在項(xiàng)目中盡可能早地面對(duì)規(guī)格說(shuō)明書(shū)中的挑戰(zhàn)。這意味著測(cè)試不僅僅是評(píng)定軟件的質(zhì)量,還可以盡可能早地找出缺陷所在,從而幫助改進(jìn)項(xiàng)目?jī)?nèi)部的質(zhì)量。參與前期工作的測(cè)試者可以預(yù)先估計(jì)問(wèn)題和難度,這將可以顯著地減少總體測(cè)試時(shí)間,加快項(xiàng)目進(jìn)度。???根
8、據(jù)W模型的要求,一旦有文檔提供,就要及時(shí)確定測(cè)試條件,以及編寫(xiě)測(cè)試用例,這些工作對(duì)測(cè)試的各級(jí)別都有意義。當(dāng)需求被提交后,就需要確定高級(jí)別的測(cè)試用例來(lái)測(cè)試這些需求。當(dāng)概要設(shè)計(jì)編寫(xiě)完成后,就需要確定測(cè)試條件來(lái)查找該階段的設(shè)計(jì)缺陷。???W模型也是有局限性的。W模型和V模型都把軟件的開(kāi)發(fā)視為需求、設(shè)計(jì)、編碼等一系列串行的活動(dòng)。同樣,軟件開(kāi)發(fā)和測(cè)試保持一種線性的前后關(guān)系,需要有嚴(yán)格的指令表示上一階段完全結(jié)束,才可以正式開(kāi)始下一個(gè)階段。這樣就無(wú)法支持