軟件測試基礎

陳振宇

  • 出版商: 清華大學
  • 出版日期: 2025-06-01
  • 售價: $359
  • 語言: 簡體中文
  • ISBN: 7302691932
  • ISBN-13: 9787302691938
  • 相關分類: 軟體測試
  • 下單後立即進貨 (約4週~6週)

  • 軟件測試基礎-preview-1
  • 軟件測試基礎-preview-2
  • 軟件測試基礎-preview-3
  • 軟件測試基礎-preview-4
  • 軟件測試基礎-preview-5
  • 軟件測試基礎-preview-6
  • 軟件測試基礎-preview-7
軟件測試基礎-preview-1

相關主題

商品描述

"本書是一本關於軟件測試的教材,旨在為讀者提供軟件測試的理論與方法。本書從測試的可 判定性問題出發,結合概率統計和圖論基礎等建立軟件測試理論。從軟件測試多樣性原則和故障 假設原理出發,重新審視開發者測試、功能測試、性能測試和安全測試等各類方法。書中還穿插 著簡要講解部分智能化軟件測試和智能軟件系統測試的**研究成果。全書共8 章,以軟件測試 理論為主線,講解常用軟件測試方法背後的內在聯系和主要區別,以啟發讀者思考。軟件測試工 具、測試案例和實踐內容請參閱線上資源。 本書適合作為高等學校軟件工程、計算機科學與技術、信息安全等專業的教材,也可供從事 軟件測試工作的工程師、研究人員參考。 "

作者簡介

陳振宇,南京大學教授、博導。慕測平臺創始人、全國大學生軟件測試大賽和IEEE國際軟件測試大賽發起人。任IEEE Transactions on Reliability的Associate Editor。在TOSEM、TSE、ICSE、FSE、ISSTA等發表論文100余篇,申請發明專利50余項,獲2012年江蘇省科學技術獎一等獎、2015年湖北省科技進步獎一等獎和2018年國家級教學成果獎二等獎。

目錄大綱

目 錄

第1 章軟件測試快速入門....................................................................................... 1

1.1 多樣性測試入門......................................................................................... 2

1.1.1 隨機測試........................................................................................ 2

1.1.2 等價類測試..................................................................................... 4

1.1.3 組合測試........................................................................................ 5

1.2 故障假設測試入門..................................................................................... 7

1.2.1 常見軟件故障................................................................................. 8

1.2.2 邊界故障假設............................................................................... 10

1.2.3 變異故障假設............................................................................... 11

1.3 圖分析測試入門....................................................................................... 13

1.3.1 圖生成方法................................................................................... 13

1.3.2 圖結構測試................................................................................... 15

1.3.3 圖元素測試................................................................................... 16

1.4 本章練習................................................................................................. 17

第2 章軟件測試的定義........................................................................................ 18

2.1 測試基礎概念.......................................................................................... 19

2.1.1 常用測試術語............................................................................... 19

2.1.2 常用測試分類............................................................................... 22

2.1.3 測試理論框架............................................................................... 26

2.2 待測程序示例.......................................................................................... 30

2.2.1 三角形程序Triangle ...................................................................... 30

2.2.2 日期程序NextDay ........................................................................ 31

2.2.3 均值方差程序MeanVar .................................................................. 33

2.3 測試基本問題.......................................................................................... 36

2.3.1 測試終止問題............................................................................... 37

2.3.2 測試預言問題............................................................................... 39

2.3.3 測試生成問題............................................................................... 40

2.4 本章練習................................................................................................. 43

軟件測試基礎

第3 章Bug 理論基礎........................................................................................... 44

3.1 認識軟件Bug .......................................................................................... 45

3.1.1 第一個Bug ................................................................................... 45

3.1.2 著名的Bug ................................................................................... 47

3.2 PIE 模型介紹........................................................................................... 49

3.2.1 PIE 模型的相關概念...................................................................... 49

3.2.2 PIE 模型的計算分析...................................................................... 52

3.2.3 PIE 模型與測試調試...................................................................... 54

3.3 Bug 理論分析.......................................................................................... 57

3.3.1 Bug 的反向定義............................................................................ 57

3.3.2 Bug 的不確定性............................................................................ 58

3.3.3 Bug 的非單調性............................................................................ 61

3.3.4 Bug 間的幹涉性............................................................................ 62

3.4 本章練習................................................................................................. 64

第4 章多樣性測試............................................................................................... 65

4.1 隨機測試理論.......................................................................................... 66

4.1.1 均勻隨機測試............................................................................... 66

4.1.2 非均勻隨機測試............................................................................ 68

4.1.3 自適應隨機測試............................................................................ 69

4.1.4 引導性隨機測試............................................................................ 73

4.2 等價類理論............................................................................................. 76

4.2.1 軟件等價類假設............................................................................ 77

4.2.2 軟件等價類劃分............................................................................ 81

4.2.3 劃分隨機測試方法......................................................................... 85

4.2.4 劃分隨機測試分析......................................................................... 87

4.3 組合理論................................................................................................. 95

4.3.1 組合測試初步............................................................................... 95

4.3.2 組合測試準則............................................................................... 98

4.3.3 組合測試生成.............................................................................. 103

4.4 本章練習................................................................................................ 106

第5 章故障假設測試.......................................................................................... 107

5.1 邊界故障假設......................................................................................... 108

5.1.1 輸入邊界值分析........................................................................... 108

5.1.2 計算邊界值分析........................................................................... 114

VIII

目 錄

5.1.3 輸出邊界值分析........................................................................... 117

5.2 變異故障假設......................................................................................... 120

5.2.1 變異分析基本概念........................................................................ 120

5.2.2 變異測試優化技術........................................................................ 123

5.2.3 變異分析理論框架........................................................................ 126

5.3 邏輯故障假設......................................................................................... 132

5.3.1 邏輯測試基礎.............................................................................. 132

5.3.2 邏輯故障結構.............................................................................. 135

5.3.3 邏輯約束求解.............................................................................. 140

5.4 本章練習................................................................................................ 143

第6 章圖分析測試.............................................................................................. 144

6.1 圖測試基礎............................................................................................ 145

6.1.1 圖論基礎..................................................................................... 145

6.1.2 控制流圖..................................................................................... 147

6.1.3 數據流圖..................................................................................... 149

6.1.4 事件流圖..................................................................................... 151

6.2 圖結構測試方法...................................................................................... 154

6.2.1 L-路徑測試................................................................................. 155

6.2.2 主路徑測試.................................................................................. 156

6.2.3 基本路徑測試.............................................................................. 158

6.3 圖元素測試方法...................................................................................... 162

6.3.1 數據流測試.................................................................................. 162

6.3.2 邏輯測試..................................................................................... 166

6.4 本章練習................................................................................................ 173

第7 章開發者測試.............................................................................................. 174

7.1 開發者多樣性測試.................................................................................. 175

7.1.1 代碼多樣性策略........................................................................... 175

7.1.2 組合多樣性策略........................................................................... 179

7.1.3 行為多樣性策略........................................................................... 183

7.2 開發者故障假設測試............................................................................... 187

7.2.1 邊界故障假設.............................................................................. 187

7.2.2 變異故障假設.............................................................................. 190

7.2.3 邏輯故障假設.............................................................................. 193

7.3 開發者測試進階...................................................................................... 198

7.3.1 mock 測試對象............................................................................. 198

IX

軟件測試基礎

7.3.2 從單元到集成.............................................................................. 200

7.3.3 開發者測試評估........................................................................... 203

7.4 本章練習................................................................................................ 206

第8 章專項測試................................................................................................. 207

8.1 功能測試................................................................................................ 208

8.1.1 功能測試簡介.............................................................................. 208

8.1.2 多樣性功能測試........................................................................... 210

8.1.3 故障假設功能測試........................................................................ 216

8.2 性能測試................................................................................................ 221

8.2.1 性能測試簡介.............................................................................. 222

8.2.2 多樣性性能測試........................................................................... 225

8.2.3 故障假設性能測試........................................................................ 230

8.3 安全測試................................................................................................ 235

8.3.1 安全測試簡介.............................................................................. 235

8.3.2 多樣性安全測試........................................................................... 238

8.3.3 故障假設安全測試........................................................................ 242

8.4 本章練習................................................................................................ 247

參考文獻.............................................................................................................. 248