集成測試課件_第1頁
集成測試課件_第2頁
集成測試課件_第3頁
集成測試課件_第4頁
集成測試課件_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

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

2、模塊的功能是否會對另一個模塊的功能產(chǎn)生錯誤的影響? (3)全局數(shù)據(jù)結構是否有問題,會不會被異常修改? (4)塊組合起來的功能能否滿足要求? (5)集成后,各個模塊的累積誤差是否會擴大,是否達到不可接受的程度? 集成測試課件5.1 集成測試概述集成測試概述 需求分析 概要設計 詳細設計 編碼 單元測試 集成測試 系統(tǒng)測試 需求分析 概要設計 詳細設計 編碼 單元測試 集成測試 系統(tǒng)測試 圖 5.1 軟件開發(fā)的 V 模型 集成測試課件5.1 集成測試概述集成測試概述2/8原則模塊劃分遵循的幾個原則:1)本次測試希望測試哪個模塊。2)把與該模塊最緊密的模塊集成在一起。3)考慮劃分后的外圍模塊,分析外

3、圍模塊和被集成模塊之間的信息流是否容易模擬和控制。集成測試課件5.1 集成測試概述集成測試概述 5.1.2 集成測試與系統(tǒng)測試的區(qū)別集成測試與系統(tǒng)測試的區(qū)別 (1)測試對象。 (2)測試時間。 (3)測試方法。 (4)測試內(nèi)容。 (5)測試目的。 (6)測試角度。 集成測試課件5.1 集成測試概述集成測試概述 5.1.3 集成測試與開發(fā)的關系集成測試與開發(fā)的關系 集成測試是和軟件開發(fā)過程中的概要設計階段相對應的,而在軟件概要設計中關于整個系統(tǒng)的體系結構就是集成測試用例輸入的基礎。 集成測試課件5.1 集成測試概述集成測試概述 5.1.4 集成測試的層次與原則集成測試的層次與原則 1集成測試的層

4、次集成測試的層次 對于傳統(tǒng)軟件來說,按集成粒度不同,可以把集成測試分為3個層次,即: (1)模塊間集成測試 (2)子系統(tǒng)內(nèi)集成測試 (3)子系統(tǒng)間集成測試 對于面向對象的應用系統(tǒng)來說,按集成粒度不同,可以把集成測試分為2個層次: (1)類內(nèi)集成測試 (2)類間集成測試 集成測試課件5.1 集成測試概述集成測試概述 5.1.4 集成測試的層次與原則集成測試的層次與原則 2集成測試的原則集成測試的原則 (1)所有公共接口必須被測試到; (2)關鍵模塊必須進行充分測試; (3)集成測試應當按一定層次進行; (4)集成測試策略選擇應當綜合考慮質量、成本和進度三者之間的關系; (5)集成測試應當盡早開始

5、,并以概要設計為基礎; (6)在模塊和接口的劃分上,測試人員應該和開發(fā)人員進行充分溝通; (7)當測試計劃中的結束標準滿足時,集成測試才能結束; (8)當接口發(fā)生修改時,涉及到的相關接口都必須進行回歸測試; (9)集成測試應根據(jù)集成測試計劃和方案進行,不能隨意測試; (10)項目管理者應保證測試用例經(jīng)過審核; (11)測試執(zhí)行結果應當如實的記錄。 集成測試課件5.2 集成測試策略集成測試策略n驅動程序驅動程序/驅動模塊驅動模塊(driver),用以模擬被測模塊的上級模塊。驅動模塊在集成測試中接受測試數(shù)據(jù),把相關的數(shù)據(jù)傳送給被測模塊,啟動被測模塊,并打印出相應的結果。n樁程序樁程序/樁模塊樁模塊

6、(stub),),也有人稱為存根程序,用以模擬被測模塊工作過程中所調(diào)用的模塊。樁模塊由被測模塊調(diào)用,它們一般只進行很少的數(shù)據(jù)處理,例如打印入口和返回,以便于檢驗被測模塊與其下級模塊的接口集成測試課件5.2 集成測試策略集成測試策略 5.2.1 非漸增式集成非漸增式集成 非漸增式集成方法首先對每個子模塊進行測試(即單元測試),然后將所有模塊全部集成起來一次性進行集成測試。 【例5.1】 對如圖5.3所示的程序,采用非漸增式集成方法進行集成測試。ABCDEFG 圖5.3 程序結構圖集成測試課件5.2 集成測試策略集成測試策略 測試A測試B測試C測試D測試E測試F測試G測試(A、B、CD、E、F、G

7、) 圖5.4 非漸增式集成集成測試課件5.2 集成測試策略集成測試策略 5.2.2 漸增式集成漸增式集成 漸增式集成與“一步到位”的非漸增式集成相反,它把程序劃分成小段來構造和測試,在這個過程中比較容易定位和改正錯誤;對接口可以進行更徹底的測試;可以使用系統(tǒng)化的測試方法。因此。目前在進行集成測試時普遍采用漸增式集成方法。 當使用漸增方式把模塊結合到程序中去時,有自頂向下和自底向上兩種集成策略。 集成測試課件5.2 集成測試策略集成測試策略 1自頂向下集成自頂向下集成 自頂向下集成方法是一個日益為人們廣泛采用的測試和組裝軟件的途徑。從主控制模塊開始,沿著程序的控制層次向下移動,逐漸把各個模塊結合

8、起來。在把附屬于(及最終附屬于)主控制模塊的那些模塊組裝到程序結構中去,或者使用深度優(yōu)先的策略,或者使用寬度優(yōu)先的策略。 【例【例5.2】對如圖5.3所示的程序,采用自頂向下集成方法,按照深度優(yōu)先方式進行集成測試。 集成測試課件5.2 集成測試策略集成測試策略n用以下4個步驟實現(xiàn)自頂向下的結合策略:n1.對主控模塊進行測試,測試時用樁模塊代替所有直接附屬于主控模塊的模塊;n2.根據(jù)選定的結合策略,每次用一個實際模塊代換一個樁模塊(新結合進來的模塊往往又需要新的樁模塊)n3.在結合進一個模塊的同時進行測試n4.為了保證加入模塊沒有引進新的錯誤,可能需要進行回歸測試集成測試課件5.2 集成測試策略

9、集成測試策略 ASBSCSD(a)測試AABSCSDSESF (b)測試BABCSDEFSG (e)測試CABCSDEFG (f)測試GABCDEFG(g)測試DABSCSDESF (c)測試EABSCSDEF (d)測試F圖5.5 自頂向下集成集成測試課件5.2 集成測試策略集成測試策略n優(yōu)點:在測試過程早期,對主要的控制點或判決點進行檢驗。在分解得很好的軟件結構中,判決需要在結構層次的較高層確定。如果主要控制點有問題,早點認識到這個問題就變得很重要。如果選用按深度方向組裝的方式,可以首先實現(xiàn)和驗證一個完整的軟件功能,可先對邏輯輸入的分支進行組裝和測試提供保證。此外,功能可行性較早得到證實,

10、還能夠給開發(fā)者和用戶帶來成功的信心。n缺點:在測試較高層模塊時,低層處理采用樁模塊替代,不能反映真實情況,重要數(shù)據(jù)不能及時回送到上層模塊,因此測試并不充分 集成測試課件5.2 集成測試策略集成測試策略 2自底向上集成自底向上集成 自底向上測試從“原子”模塊(即在軟件結構最底層的模塊)開始組裝和測試。因為是從底部向上結合模塊,總能得到所需的下層模塊處理功能,所以不需要樁模塊。 【例【例5.3】對如圖5.3所示的程序,采用自底向上集成方法,按照深度優(yōu)先方式進行集成測試。集成測試課件n用以下4個步驟實現(xiàn)自底向上的結合策略:n1.把低層模塊組合成實現(xiàn)某個特定軟件子功能的族;n2.寫一個驅動程序(用于測

11、試的控制程序),以協(xié)調(diào)數(shù)據(jù)的輸入和輸出;n3.對由模塊組成的子功能族進行測試;n4.去掉驅動程序,沿軟件結構自下向上移動,把子功能族組合起來形成更大的子功能族。集成測試課件5.2 集成測試策略集成測試策略 測試E測試F測試G測試D測試(A、B、CD、E、F、G) 圖5.6 自底向上集成測試(B、E、F)測試(C、G)集成測試課件5.2 集成測試策略集成測試策略n優(yōu)點:由于驅動模塊模擬了所有調(diào)用參數(shù),測試模塊返回結果不影響驅動模塊,生成測試數(shù)據(jù)也沒有困難。如果關鍵模塊是在結構圖的底部,自底向上的測試是有優(yōu)越性的。另外自底向上的組裝測試不必開發(fā)樁模塊。n缺點:當最后一個模塊尚未測試時,還沒有呈現(xiàn)出

12、被測軟件系統(tǒng)的雛形。集成測試課件5.2 集成測試策略集成測試策略 5.2.3 三明治集成三明治集成 三明治集成是一種混合增量式測試策略,綜合了自頂向下和自底向上兩種集成方法的優(yōu)點。這種方法樁模塊和驅動模塊的開發(fā)工作都比較小,不過代價是在一定程度上增加了定位缺陷的難度。 【例5.4】對如圖5.3所示的程序,以B模塊所在層為界,采用三明治集成方法進行集成測試。集成測試課件5.2 集成測試策略集成測試策略 測試E測試F測試G測試A測試(A、B、CD、E、F、G) 圖5.7 三明治集成測試(B、E、F)測試(C、G)集成測試課件5.3 集成測試用例設計集成測試用例設計 1為系統(tǒng)運行設計用例為系統(tǒng)運行設

13、計用例 可使用的主要測試分析技術有: (1)等價類劃分。 (2)邊界值分析。 (3)基于決策表的測試。 集成測試課件5.3 集成測試用例設計集成測試用例設計 2為正向測試設計用例為正向測試設計用例假設在嚴格的軟件質量控制下,軟件各個模塊的接口設計和模塊功假設在嚴格的軟件質量控制下,軟件各個模塊的接口設計和模塊功能設計完全正確無誤并且滿足要求,那么作為正向集成測試的一個能設計完全正確無誤并且滿足要求,那么作為正向集成測試的一個重點重點就是就是驗證這些集成后的模塊是否按照設計實現(xiàn)了預期功能驗證這些集成后的模塊是否按照設計實現(xiàn)了預期功能??墒怯萌缦聨追N主要測試分析技術: (1)輸入域測試。 (2)輸

14、出域測試。 (3)等價類劃分。 (4)狀態(tài)轉換測試。 (5)規(guī)范導出法。 集成測試課件5.3 集成測試用例設計集成測試用例設計 3為逆向測試設計用例為逆向測試設計用例集成測試中的逆向測試包括分析被測接口是否實現(xiàn)了需求規(guī)格沒有描述的功能,檢查規(guī)格說明中可能出現(xiàn)的接口遺漏,或者判斷接口定義是否有錯誤,以及可能出現(xiàn)的接口異常錯誤等。 可使用的主要測試分析技術有: (1)錯誤猜測法。 (2)基于風險的測試。 (3)基于故障的測試。 (4)邊界值分析。 (5)特殊值測試。 (6)狀態(tài)轉換測試。 集成測試課件5.3 集成測試用例設計集成測試用例設計 4為滿足特殊需求設計用例 5為覆蓋設計用例 可使用的主要測試分析技術有: (1)功能覆蓋分析。 (2)接口覆蓋分析。 集成測試課件5.4 集成測試過程集成測試過程 一個測試從開發(fā)到執(zhí)行遵循一個過程,不同的組織對這個過程的定義會有所不同。根據(jù)集成測試不同階段的任務,可以把集成測試劃分為5個階段:計劃階段、設計階段、實施階段、執(zhí)行階段、評估階段。 制定集成測試計劃設計集成測試實施集成

溫馨提示

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

評論

0/150

提交評論