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