(软件工程复习核心重点)第六章实现和测试-第四节:集成测试
文章目錄
- 一:概念
- (1)方法分類
- (2)非漸增測(cè)試的缺點(diǎn)(了解)
- (3)漸增測(cè)試的優(yōu)點(diǎn)(了解)
- 二:漸增式測(cè)試策略
- (1)自頂向下集成
- A:定義
- B:步驟(了解)
- C:結(jié)合策略(了解)
- ①:深度優(yōu)先
- ②:寬度優(yōu)先
- D:優(yōu)缺點(diǎn)
- (2)自底向上集成
- A:定義
- B:步驟(了解)
- C:案例
- D:優(yōu)缺點(diǎn)
- 三:回歸測(cè)試
- (1)定義
- (2)方法(了解)
- (3)回歸測(cè)試集(了解)
一:概念
(1)方法分類
非漸增測(cè)試: 先分別測(cè)試每個(gè)模塊,再把所有模塊按設(shè)計(jì)要求放在一起結(jié)合成所要的程序
漸增測(cè)試: 把下一個(gè)要測(cè)試的模塊同已經(jīng)測(cè)試好的那些模塊結(jié)合起來(lái)進(jìn)行測(cè)試,測(cè)試完以后再把下一個(gè)應(yīng)該測(cè)試的模塊結(jié)合進(jìn)來(lái)測(cè)試,每次增加一個(gè)模塊。漸增式測(cè)試同時(shí)完成單元測(cè)試和集成測(cè)試
(2)非漸增測(cè)試的缺點(diǎn)(了解)
- 把所有模塊放在一起,測(cè)試者面對(duì)的情況十分復(fù)雜
- 在龐大的程序中診斷定位一個(gè)錯(cuò)誤非常困難
- 一旦改正一個(gè)錯(cuò)誤之后,又會(huì)遇到新的錯(cuò)誤,沒(méi)有窮盡
(3)漸增測(cè)試的優(yōu)點(diǎn)(了解)
- 把程序劃分成小段來(lái)構(gòu)造和測(cè)試,比較容易定位和改正錯(cuò)誤
- 對(duì)接口可以進(jìn)行更徹底的測(cè)試
- 可以使用系統(tǒng)化的測(cè)試方法
二:漸增式測(cè)試策略
(1)自頂向下集成
A:定義
從主控制模塊開(kāi)始,沿著程序的控制層次向下移動(dòng),逐漸把各個(gè)模塊結(jié)合起來(lái)。在把附屬于主控制模塊的模塊組裝到程序結(jié)構(gòu)中時(shí),使用深度優(yōu)先的策略或?qū)挾葍?yōu)先的策略
B:步驟(了解)
- 對(duì)主控制模塊進(jìn)行測(cè)試,測(cè)試時(shí)用存根程序代替所有直接附屬于主控制模塊的模塊
- 根據(jù)選的結(jié)合策略(深度優(yōu)先或?qū)挾葍?yōu)先),每次用一個(gè)實(shí)際模塊代換一個(gè)存根程序
- 在結(jié)合進(jìn)一個(gè)模塊的同時(shí)進(jìn)行測(cè)試
- 為了保證加入模塊沒(méi)有引進(jìn)新的錯(cuò)誤,可能需要進(jìn)行回歸測(cè)試
C:結(jié)合策略(了解)
①:深度優(yōu)先
深度優(yōu)先的結(jié)合方法先組裝在軟件結(jié)構(gòu)的一條主控制通路上的所有模塊。步驟如下:
- 第一,選擇一條主控制通路取決于應(yīng)用的特點(diǎn)(如,選取左通路)
- 第二,結(jié)合模塊M1M_{1}M1?、M2M_{2}M2?、M5M_{5}M5?
- 第三,把M8M_{8}M8?或M6M_{6}M6?結(jié)合進(jìn)來(lái)
- 第四,構(gòu)造中央的和右側(cè)的控制通路
②:寬度優(yōu)先
寬度優(yōu)先的結(jié)合方法是沿軟件結(jié)構(gòu)水平地移動(dòng),把處于同一個(gè)控制層次上的所有模塊組裝起來(lái)。步驟如下
- 第一,結(jié)合模塊M2M_{2}M2?、M3M_{3}M3?、M4M_{4}M4?
- 第二,結(jié)合下一個(gè)控制層次中的模塊M5M_{5}M5?、M6M_{6}M6?、M7M_{7}M7?
- 第三,繼續(xù)進(jìn)行下去,直到所有模塊都被結(jié)合進(jìn)來(lái)為止
D:優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
- 不需要測(cè)試驅(qū)動(dòng)程序
- 能夠在測(cè)試階段的早期實(shí)現(xiàn)并驗(yàn)證系統(tǒng)的主要功能
- 能在早期發(fā)現(xiàn)上層模塊的接口錯(cuò)誤
缺點(diǎn)
- 需要存根程序,可能遇到與此相聯(lián)系的測(cè)試?yán)щy
- 低層關(guān)鍵模塊中的錯(cuò)誤發(fā)現(xiàn)較晚
- 在早期不能充分展開(kāi)人力
(2)自底向上集成
A:定義
自底向上測(cè)試從軟件結(jié)構(gòu)最低層的模塊開(kāi)始組裝和測(cè)試。因?yàn)槭菑牡撞肯蛏辖Y(jié)合模塊,總能得到所需的下層模塊處理功能,所以不需要存根程序
B:步驟(了解)
- 把低層模塊組合成實(shí)現(xiàn)某個(gè)特定的軟件子功能的族
- 寫(xiě)一個(gè)用于測(cè)試的控制程序,協(xié)調(diào)測(cè)試數(shù)據(jù)的輸入和輸出
- 對(duì)由模塊組成的子功能族進(jìn)行測(cè)試
- 去掉驅(qū)動(dòng)程序,沿軟件結(jié)構(gòu)自下向上移動(dòng),把子功能族組合起來(lái)形成大的子功能族
C:案例
- 把模塊組合成族1、族2和族3
- 使用驅(qū)動(dòng)程序(圖中虛線方框)對(duì)每個(gè)子功能族進(jìn)行測(cè)試
- 族1和族2中的模塊屬于模塊MaM_{a}Ma?,去掉驅(qū)動(dòng)程序D1D_{1}D1?和D2D_{2}D2?,把這兩個(gè)族直接同MaM_{a}Ma?連接起來(lái)。同樣在和模塊MbM_{b}Mb?結(jié)合之前去掉族3的驅(qū)動(dòng)程序D3D_{3}D3?
- MaM_{a}Ma?和MbM_{b}Mb?這兩個(gè)模塊都與模塊McM_{c}Mc?結(jié)合起來(lái)
D:優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
- 不需要存根程序,不會(huì)遇到與此相聯(lián)系的測(cè)試?yán)щy
- 能較早發(fā)現(xiàn)低層關(guān)鍵模塊中的錯(cuò)誤
- 在早期能充分展開(kāi)人力
缺點(diǎn)
- 需要測(cè)試驅(qū)動(dòng)程序
- 不能夠在測(cè)試階段的早期實(shí)現(xiàn)并驗(yàn)證系統(tǒng)的主要功能
- 不能在早期發(fā)現(xiàn)上層模塊的接口錯(cuò)誤
三:回歸測(cè)試
(1)定義
回歸測(cè)試是指重新執(zhí)行已經(jīng)做過(guò)的測(cè)試的某個(gè)子集,以保證上述這些變化沒(méi)有帶來(lái)非預(yù)期的副作用。它可以用于保證由于調(diào)試或其他原因引起的變化,不會(huì)導(dǎo)致非預(yù)期的軟件行為或額外錯(cuò)誤的測(cè)試活動(dòng)
(2)方法(了解)
- 通過(guò)重新執(zhí)行全部測(cè)試用例的一個(gè)子集人工地進(jìn)行
- 利用捕獲回放工具,捕獲測(cè)試用例和實(shí)際運(yùn)行結(jié)果,然后回放,并比較運(yùn)行結(jié)果
(3)回歸測(cè)試集(了解)
回歸測(cè)試集(已執(zhí)行過(guò)的測(cè)試用例的子集)包括下述3類不同的測(cè)試用例:
- 檢測(cè)軟件全部功能的代表性測(cè)試用例
- 專門(mén)針對(duì)可能受修改影響的軟件功能的附加測(cè)試
- 針對(duì)被修改過(guò)的軟件成分的測(cè)試
總結(jié)
以上是生活随笔為你收集整理的(软件工程复习核心重点)第六章实现和测试-第四节:集成测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 关于事件的一点小总结
- 下一篇: CodeForces - 557E(tr