(软件工程复习核心重点)第六章实现和测试-第六节:白盒测试
文章目錄
- 一:邏輯覆蓋
- (1)定義
- (2)分類
- 二:控制結(jié)果測試
- (1)基本路徑測試
- A:定義(了解)
- B:步驟(了解)
- (2)條件測試(了解)
- A:關(guān)系表達(dá)式
- B:條件錯誤的類型
- C:條件測試的優(yōu)點(diǎn)
- (3)循環(huán)測試(了解)
- A:定義
- B:分類
一:邏輯覆蓋
(1)定義
邏輯覆蓋是對一系列測試過程的總稱, 這組測試過程逐漸進(jìn)行越來越完整的通路測試
(2)分類
語句覆蓋:選擇足夠多的測試數(shù)據(jù),被測試程序中的每條語句至少執(zhí)行一次
判定覆蓋:不僅每個語句至少執(zhí)行一次,而且每個判定的每種可能的結(jié)果都應(yīng)該至少執(zhí)行一次
條件覆蓋:不僅每個語句至少執(zhí)行一次,而且使判定表達(dá)式中的每個條件都取到各種可能的結(jié)果
判定/條件覆蓋:選擇足夠多的測試數(shù)據(jù),使判定表達(dá)式中的每個條件都取到各種可能的結(jié)果,而且每個判定表達(dá)式也都取到各種可能的結(jié)果。它同時滿足判斷覆蓋和條件覆蓋
條件組合覆蓋:選取足夠多的測試數(shù)據(jù),使得每個判定表達(dá)式中條件的各種可能組合都至少出現(xiàn)一次。滿足條件組合覆蓋,也一定滿足判定覆蓋、條件覆蓋和判斷/條件覆蓋
點(diǎn)覆蓋:連通圖G的子圖G’是連通的,而且包含G的所有結(jié)點(diǎn),則稱G’是G的點(diǎn)覆蓋。滿足點(diǎn)覆蓋標(biāo)準(zhǔn)要求選取足夠多的測試數(shù)據(jù),使得程序執(zhí)行路徑至少經(jīng)過流圖的每個結(jié)點(diǎn)一次,也即點(diǎn)覆蓋標(biāo)準(zhǔn)和語句覆蓋標(biāo)準(zhǔn)是相同的
邊覆蓋:連通圖G的子圖G’’是連通的,而且包含G的所有邊,則稱G’’是G的邊覆蓋。為滿足邊覆蓋的測試標(biāo)準(zhǔn),要求選取足夠多的測試數(shù)據(jù),使程序執(zhí)行路徑至少經(jīng)過流圖每條邊一次,也即邊覆蓋與判定覆蓋是相同的
路徑覆蓋:選取足夠多的測試數(shù)據(jù),使程序的每條可能路徑都至少執(zhí)行一次,如果程序圖中有環(huán),則要求每個環(huán)至少經(jīng)過一次
二:控制結(jié)果測試
(1)基本路徑測試
A:定義(了解)
基本路徑測試是TomMcCabeTomMcCabeTomMcCabe提出的一種白盒測試技術(shù)。使用這種技術(shù)設(shè)計(jì)測試用例時,首先計(jì)算程序的環(huán)形復(fù)雜度,并用該復(fù)雜度為指南,定義執(zhí)行路徑的基本集合,從該基本集合導(dǎo)出的測試用例可以保證程序中的每條語句至少執(zhí)行一次,而且每個條件在執(zhí)行時都將分別取真、假兩種值
B:步驟(了解)
- 根據(jù)過程設(shè)計(jì)結(jié)果畫出相應(yīng)的流圖
- 計(jì)算流圖的環(huán)形復(fù)雜度
- 確定線性獨(dú)立路徑(至少包含一條在定義該路徑之前不曾用過的邊)的基本集合
- 設(shè)計(jì)可強(qiáng)制執(zhí)行基本集合中每條路徑的測試用例
(2)條件測試(了解)
A:關(guān)系表達(dá)式
一個簡單條件是一個布爾變量或一個關(guān)系表達(dá)式,在布爾變量或關(guān)系表達(dá)式之前還可能有一個NOT(?\neg?)運(yùn)算符,關(guān)系表達(dá)式的形式如下:
E1<關(guān)系算符>E2E_{1}<關(guān)系算符>E_{2}E1?<關(guān)系算符>E2?
其中E1E_{1}E1?和E2E_{2}E2?是算數(shù)表達(dá)式,而<關(guān)系算符>是下列算符之一
- <\lt<
- ≤\leq≤
- =
- ≠\neq?=
- >\gt>
- ≥\geq≥
復(fù)合條件由兩個或多個簡單條件、布爾算符和括弧組成
布爾算符有
- OR(|)
- AND(&)
- NOT(?\neg?)
不包含關(guān)系表達(dá)式的條件稱為布爾表達(dá)式
B:條件錯誤的類型
- 布爾算符錯;
- 布爾變量錯;
- 布爾括弧錯;
- 關(guān)系算符錯;
- 算術(shù)表達(dá)式錯
C:條件測試的優(yōu)點(diǎn)
- 容易度量條件的測試覆蓋率
- 程序內(nèi)條件的測試覆蓋率可指導(dǎo)附加測試的設(shè)計(jì)
(3)循環(huán)測試(了解)
A:定義
循環(huán)是絕大多數(shù)軟件算法的基礎(chǔ),但是,在測試軟件時卻往往未對循環(huán)結(jié)構(gòu)進(jìn)行足夠的測試。循環(huán)測試是一種白盒測試技術(shù),它專注于測試循環(huán)結(jié)構(gòu)的有效性
B:分類
在結(jié)構(gòu)化的程序中通常只有3種循環(huán),即簡單循環(huán)、串接循環(huán)和嵌套循環(huán)
總結(jié)
以上是生活随笔為你收集整理的(软件工程复习核心重点)第六章实现和测试-第六节:白盒测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP.NET %%,%=%,%#%区别
- 下一篇: 上传文件插件