第5章 集成測(cè)試_第1頁(yè)
第5章 集成測(cè)試_第2頁(yè)
第5章 集成測(cè)試_第3頁(yè)
第5章 集成測(cè)試_第4頁(yè)
第5章 集成測(cè)試_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第第5章章 集成測(cè)試集成測(cè)試5.1 集成測(cè)試概述集成測(cè)試概述5.1.1 集成測(cè)試的概念 集成(Integration)是指把多個(gè)單元組合起來(lái)形成更大的單元。 集成測(cè)試(Integration Testing)是在假定各個(gè)軟件單元已經(jīng)通過(guò)了單元測(cè)試的前提下,檢查各個(gè)軟件單元之間的相互接口是否正確。 軟件測(cè)試過(guò)程模塊中有無(wú)故障發(fā)現(xiàn)與接口有關(guān)的模塊之間的問(wèn)題增量式集成測(cè)試法是否滿足軟件需求結(jié)論性評(píng)價(jià)證明系統(tǒng)性能獨(dú)立的測(cè)試機(jī)構(gòu)向用戶表明系統(tǒng)可以像用戶預(yù)的那樣工作5.1 集成測(cè)試概述集成測(cè)試概述 集成測(cè)試主要關(guān)注下列問(wèn)題: (1)模塊間的數(shù)據(jù)傳遞是否正確? (2)一個(gè)模塊的功能是否會(huì)對(duì)另一個(gè)模塊的功能產(chǎn)

2、生錯(cuò)誤的影響? (3)全局?jǐn)?shù)據(jù)結(jié)構(gòu)是否有問(wèn)題,會(huì)不會(huì)被異常修改? (4)塊組合起來(lái)的功能能否滿足要求? (5)集成后,各個(gè)模塊的累積誤差是否會(huì)擴(kuò)大,是否達(dá)到不可接受的程度? 5.1 集成測(cè)試概述集成測(cè)試概述 需求分析 概要設(shè)計(jì) 詳細(xì)設(shè)計(jì) 編碼 單元測(cè)試 集成測(cè)試 系統(tǒng)測(cè)試 需求分析 概要設(shè)計(jì) 詳細(xì)設(shè)計(jì) 編碼 單元測(cè)試 集成測(cè)試 系統(tǒng)測(cè)試 圖 5.1 軟件開(kāi)發(fā)的 V 模型 5.1 集成測(cè)試概述集成測(cè)試概述2/8原則模塊劃分遵循的幾個(gè)原則:1)本次測(cè)試希望測(cè)試哪個(gè)模塊。2)把與該模塊最緊密的模塊集成在一起。3)考慮劃分后的外圍模塊,分析外圍模塊和被集成模塊之間的信息流是否容易模擬和控制。5.1 集

3、成測(cè)試概述集成測(cè)試概述 5.1.2 集成測(cè)試與系統(tǒng)測(cè)試的區(qū)別集成測(cè)試與系統(tǒng)測(cè)試的區(qū)別 (1)測(cè)試對(duì)象。 (2)測(cè)試時(shí)間。 (3)測(cè)試方法。 (4)測(cè)試內(nèi)容。 (5)測(cè)試目的。 (6)測(cè)試角度。 5.1 集成測(cè)試概述集成測(cè)試概述 5.1.3 集成測(cè)試與開(kāi)發(fā)的關(guān)系集成測(cè)試與開(kāi)發(fā)的關(guān)系 集成測(cè)試是和軟件開(kāi)發(fā)過(guò)程中的概要設(shè)計(jì)階段相對(duì)應(yīng)的,而在軟件概要設(shè)計(jì)中關(guān)于整個(gè)系統(tǒng)的體系結(jié)構(gòu)就是集成測(cè)試用例輸入的基礎(chǔ)。 5.1 集成測(cè)試概述集成測(cè)試概述 5.1.4 集成測(cè)試的層次與原則集成測(cè)試的層次與原則 1集成測(cè)試的層次集成測(cè)試的層次 對(duì)于傳統(tǒng)軟件來(lái)說(shuō),按集成粒度不同,可以把集成測(cè)試分為3個(gè)層次,即: (1)模塊

4、間集成測(cè)試 (2)子系統(tǒng)內(nèi)集成測(cè)試 (3)子系統(tǒng)間集成測(cè)試 對(duì)于面向?qū)ο蟮膽?yīng)用系統(tǒng)來(lái)說(shuō),按集成粒度不同,可以把集成測(cè)試分為2個(gè)層次: (1)類(lèi)內(nèi)集成測(cè)試 (2)類(lèi)間集成測(cè)試 5.1 集成測(cè)試概述集成測(cè)試概述 5.1.4 集成測(cè)試的層次與原則集成測(cè)試的層次與原則 2集成測(cè)試的原則集成測(cè)試的原則 (1)所有公共接口必須被測(cè)試到; (2)關(guān)鍵模塊必須進(jìn)行充分測(cè)試; (3)集成測(cè)試應(yīng)當(dāng)按一定層次進(jìn)行; (4)集成測(cè)試策略選擇應(yīng)當(dāng)綜合考慮質(zhì)量、成本和進(jìn)度三者之間的關(guān)系; (5)集成測(cè)試應(yīng)當(dāng)盡早開(kāi)始,并以概要設(shè)計(jì)為基礎(chǔ); (6)在模塊和接口的劃分上,測(cè)試人員應(yīng)該和開(kāi)發(fā)人員進(jìn)行充分溝通; (7)當(dāng)測(cè)試計(jì)劃中

5、的結(jié)束標(biāo)準(zhǔn)滿足時(shí),集成測(cè)試才能結(jié)束; (8)當(dāng)接口發(fā)生修改時(shí),涉及到的相關(guān)接口都必須進(jìn)行回歸測(cè)試; (9)集成測(cè)試應(yīng)根據(jù)集成測(cè)試計(jì)劃和方案進(jìn)行,不能隨意測(cè)試; (10)項(xiàng)目管理者應(yīng)保證測(cè)試用例經(jīng)過(guò)審核; (11)測(cè)試執(zhí)行結(jié)果應(yīng)當(dāng)如實(shí)的記錄。 5.2 集成測(cè)試策略集成測(cè)試策略n驅(qū)動(dòng)程序驅(qū)動(dòng)程序/驅(qū)動(dòng)模塊驅(qū)動(dòng)模塊(driver),用以模擬被測(cè)模塊的上級(jí)模塊。驅(qū)動(dòng)模塊在集成測(cè)試中接受測(cè)試數(shù)據(jù),把相關(guān)的數(shù)據(jù)傳送給被測(cè)模塊,啟動(dòng)被測(cè)模塊,并打印出相應(yīng)的結(jié)果。n樁程序樁程序/樁模塊樁模塊(stub),),也有人稱(chēng)為存根程序,用以模擬被測(cè)模塊工作過(guò)程中所調(diào)用的模塊。樁模塊由被測(cè)模塊調(diào)用,它們一般只進(jìn)行很少的

6、數(shù)據(jù)處理,例如打印入口和返回,以便于檢驗(yàn)被測(cè)模塊與其下級(jí)模塊的接口5.2 集成測(cè)試策略集成測(cè)試策略 5.2.1 非漸增式集成非漸增式集成 非漸增式集成方法首先對(duì)每個(gè)子模塊進(jìn)行測(cè)試(即單元測(cè)試),然后將所有模塊全部集成起來(lái)一次性進(jìn)行集成測(cè)試。 【例5.1】 對(duì)如圖5.3所示的程序,采用非漸增式集成方法進(jìn)行集成測(cè)試。ABCDEFG 圖5.3 程序結(jié)構(gòu)圖5.2 集成測(cè)試策略集成測(cè)試策略 測(cè)試A測(cè)試B測(cè)試C測(cè)試D測(cè)試E測(cè)試F測(cè)試G測(cè)試(A、B、CD、E、F、G) 圖5.4 非漸增式集成5.2 集成測(cè)試策略集成測(cè)試策略 5.2.2 漸增式集成漸增式集成 漸增式集成與“一步到位”的非漸增式集成相反,它把程

7、序劃分成小段來(lái)構(gòu)造和測(cè)試,在這個(gè)過(guò)程中比較容易定位和改正錯(cuò)誤;對(duì)接口可以進(jìn)行更徹底的測(cè)試;可以使用系統(tǒng)化的測(cè)試方法。因此。目前在進(jìn)行集成測(cè)試時(shí)普遍采用漸增式集成方法。 當(dāng)使用漸增方式把模塊結(jié)合到程序中去時(shí),有自頂向下和自底向上兩種集成策略。 5.2 集成測(cè)試策略集成測(cè)試策略 1自頂向下集成自頂向下集成 自頂向下集成方法是一個(gè)日益為人們廣泛采用的測(cè)試和組裝軟件的途徑。從主控制模塊開(kāi)始,沿著程序的控制層次向下移動(dòng),逐漸把各個(gè)模塊結(jié)合起來(lái)。在把附屬于(及最終附屬于)主控制模塊的那些模塊組裝到程序結(jié)構(gòu)中去,或者使用深度優(yōu)先的策略,或者使用寬度優(yōu)先的策略。 【例【例5.2】對(duì)如圖5.3所示的程序,采用自

8、頂向下集成方法,按照深度優(yōu)先方式進(jìn)行集成測(cè)試。 5.2 集成測(cè)試策略集成測(cè)試策略n用以下4個(gè)步驟實(shí)現(xiàn)自頂向下的結(jié)合策略:n1.對(duì)主控模塊進(jìn)行測(cè)試,測(cè)試時(shí)用樁模塊代替所有直接附屬于主控模塊的模塊;n2.根據(jù)選定的結(jié)合策略,每次用一個(gè)實(shí)際模塊代換一個(gè)樁模塊(新結(jié)合進(jìn)來(lái)的模塊往往又需要新的樁模塊)n3.在結(jié)合進(jìn)一個(gè)模塊的同時(shí)進(jìn)行測(cè)試n4.為了保證加入模塊沒(méi)有引進(jìn)新的錯(cuò)誤,可能需要進(jìn)行回歸測(cè)試5.2 集成測(cè)試策略集成測(cè)試策略 ASBSCSD(a)測(cè)試AABSCSDSESF (b)測(cè)試BABCSDEFSG (e)測(cè)試CABCSDEFG (f)測(cè)試GABCDEFG(g)測(cè)試DABSCSDESF (c)測(cè)試

9、EABSCSDEF (d)測(cè)試F圖5.5 自頂向下集成5.2 集成測(cè)試策略集成測(cè)試策略n優(yōu)點(diǎn):在測(cè)試過(guò)程早期,對(duì)主要的控制點(diǎn)或判決點(diǎn)進(jìn)行檢驗(yàn)。在分解得很好的軟件結(jié)構(gòu)中,判決需要在結(jié)構(gòu)層次的較高層確定。如果主要控制點(diǎn)有問(wèn)題,早點(diǎn)認(rèn)識(shí)到這個(gè)問(wèn)題就變得很重要。如果選用按深度方向組裝的方式,可以首先實(shí)現(xiàn)和驗(yàn)證一個(gè)完整的軟件功能,可先對(duì)邏輯輸入的分支進(jìn)行組裝和測(cè)試提供保證。此外,功能可行性較早得到證實(shí),還能夠給開(kāi)發(fā)者和用戶帶來(lái)成功的信心。n缺點(diǎn):在測(cè)試較高層模塊時(shí),低層處理采用樁模塊替代,不能反映真實(shí)情況,重要數(shù)據(jù)不能及時(shí)回送到上層模塊,因此測(cè)試并不充分 5.2 集成測(cè)試策略集成測(cè)試策略 2自底向上集成

10、自底向上集成 自底向上測(cè)試從“原子”模塊(即在軟件結(jié)構(gòu)最底層的模塊)開(kāi)始組裝和測(cè)試。因?yàn)槭菑牡撞肯蛏辖Y(jié)合模塊,總能得到所需的下層模塊處理功能,所以不需要樁模塊。 【例【例5.3】對(duì)如圖5.3所示的程序,采用自底向上集成方法,按照深度優(yōu)先方式進(jìn)行集成測(cè)試。n用以下4個(gè)步驟實(shí)現(xiàn)自底向上的結(jié)合策略:n1.把低層模塊組合成實(shí)現(xiàn)某個(gè)特定軟件子功能的族;n2.寫(xiě)一個(gè)驅(qū)動(dòng)程序(用于測(cè)試的控制程序),以協(xié)調(diào)數(shù)據(jù)的輸入和輸出;n3.對(duì)由模塊組成的子功能族進(jìn)行測(cè)試;n4.去掉驅(qū)動(dòng)程序,沿軟件結(jié)構(gòu)自下向上移動(dòng),把子功能族組合起來(lái)形成更大的子功能族。5.2 集成測(cè)試策略集成測(cè)試策略 測(cè)試E測(cè)試F測(cè)試G測(cè)試D測(cè)試(A、

11、B、CD、E、F、G) 圖5.6 自底向上集成測(cè)試(B、E、F)測(cè)試(C、G)5.2 集成測(cè)試策略集成測(cè)試策略n優(yōu)點(diǎn):由于驅(qū)動(dòng)模塊模擬了所有調(diào)用參數(shù),測(cè)試模塊返回結(jié)果不影響驅(qū)動(dòng)模塊,生成測(cè)試數(shù)據(jù)也沒(méi)有困難。如果關(guān)鍵模塊是在結(jié)構(gòu)圖的底部,自底向上的測(cè)試是有優(yōu)越性的。另外自底向上的組裝測(cè)試不必開(kāi)發(fā)樁模塊。n缺點(diǎn):當(dāng)最后一個(gè)模塊尚未測(cè)試時(shí),還沒(méi)有呈現(xiàn)出被測(cè)軟件系統(tǒng)的雛形。5.2 集成測(cè)試策略集成測(cè)試策略 5.2.3 三明治集成三明治集成 三明治集成是一種混合增量式測(cè)試策略,綜合了自頂向下和自底向上兩種集成方法的優(yōu)點(diǎn)。這種方法樁模塊和驅(qū)動(dòng)模塊的開(kāi)發(fā)工作都比較小,不過(guò)代價(jià)是在一定程度上增加了定位缺陷的難

12、度。 【例5.4】對(duì)如圖5.3所示的程序,以B模塊所在層為界,采用三明治集成方法進(jìn)行集成測(cè)試。5.2 集成測(cè)試策略集成測(cè)試策略 測(cè)試E測(cè)試F測(cè)試G測(cè)試A測(cè)試(A、B、CD、E、F、G) 圖5.7 三明治集成測(cè)試(B、E、F)測(cè)試(C、G)5.3 集成測(cè)試用例設(shè)計(jì)集成測(cè)試用例設(shè)計(jì) 1為系統(tǒng)運(yùn)行設(shè)計(jì)用例為系統(tǒng)運(yùn)行設(shè)計(jì)用例 可使用的主要測(cè)試分析技術(shù)有: (1)等價(jià)類(lèi)劃分。 (2)邊界值分析。 (3)基于決策表的測(cè)試。 5.3 集成測(cè)試用例設(shè)計(jì)集成測(cè)試用例設(shè)計(jì) 2為正向測(cè)試設(shè)計(jì)用例為正向測(cè)試設(shè)計(jì)用例假設(shè)在嚴(yán)格的軟件質(zhì)量控制下,軟件各個(gè)模塊的接口設(shè)計(jì)和模塊功假設(shè)在嚴(yán)格的軟件質(zhì)量控制下,軟件各個(gè)模塊的接口

13、設(shè)計(jì)和模塊功能設(shè)計(jì)完全正確無(wú)誤并且滿足要求,那么作為正向集成測(cè)試的一個(gè)能設(shè)計(jì)完全正確無(wú)誤并且滿足要求,那么作為正向集成測(cè)試的一個(gè)重點(diǎn)重點(diǎn)就是就是驗(yàn)證這些集成后的模塊是否按照設(shè)計(jì)實(shí)現(xiàn)了預(yù)期功能驗(yàn)證這些集成后的模塊是否按照設(shè)計(jì)實(shí)現(xiàn)了預(yù)期功能??墒怯萌缦聨追N主要測(cè)試分析技術(shù): (1)輸入域測(cè)試。 (2)輸出域測(cè)試。 (3)等價(jià)類(lèi)劃分。 (4)狀態(tài)轉(zhuǎn)換測(cè)試。 (5)規(guī)范導(dǎo)出法。 5.3 集成測(cè)試用例設(shè)計(jì)集成測(cè)試用例設(shè)計(jì) 3為逆向測(cè)試設(shè)計(jì)用例為逆向測(cè)試設(shè)計(jì)用例集成測(cè)試中的逆向測(cè)試包括分析被測(cè)接口是否實(shí)現(xiàn)了需求規(guī)格沒(méi)有描述的功能,檢查規(guī)格說(shuō)明中可能出現(xiàn)的接口遺漏,或者判斷接口定義是否有錯(cuò)誤,以及可能出現(xiàn)的接口異常錯(cuò)誤等。 可使用的主要測(cè)試分析技術(shù)有: (1)錯(cuò)誤猜測(cè)法。 (2)基于風(fēng)險(xiǎn)的測(cè)試。 (3)基于故障的測(cè)試。 (4)邊界值分析。 (5)特殊值測(cè)試。 (6)狀態(tài)轉(zhuǎn)換測(cè)試。 5.3 集成測(cè)試用例設(shè)計(jì)集成測(cè)試用例設(shè)計(jì) 4為滿足特殊需求設(shè)計(jì)用例 5為覆蓋設(shè)計(jì)用例 可使用的主要測(cè)試分析技術(shù)有: (1)功能覆蓋分析。 (2)接口覆蓋分析。 5.4 集成測(cè)試過(guò)程集成測(cè)試過(guò)程 一個(gè)測(cè)試從開(kāi)發(fā)到執(zhí)行遵循一個(gè)過(guò)程,不同的組織對(duì)這個(gè)過(guò)程的定義會(huì)有所不同。根據(jù)集成測(cè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論