軟件質量保證與測試(慕課版)(第2版)

王智鋼 ?楊乙霖

  • 出版商: 人民郵電
  • 出版日期: 2026-06-01
  • 售價: $336
  • 語言: 簡體中文
  • 頁數: 220
  • ISBN: 7115684847
  • ISBN-13: 9787115684844
  • 相關分類: Unit Test 單元測試
  • 下單後立即進貨 (約4週~6週)

  • 軟件質量保證與測試(慕課版)(第2版)-preview-1
軟件質量保證與測試(慕課版)(第2版)-preview-1

相關主題

商品描述

本書講述了軟件質量保證與測試的發展過程、基本概念、核心思想、基本原理、基本方法、主要過程、常用技術與工具,以及信創測試、AI安全測試和軟件測試實踐。本書共10章,內容分別為:緒論、軟件測試策略、黑盒測試、白盒測試、軟件測試過程、面向對象測試、自動化測試、Web測試、軟件質量與質量保證、軟件安全測試。

本書以大量源程序代碼和測試代碼作為示例來進行講解,結合軟件開發,培養學生的測試分析、測試設計和測試開發能力;同時以基於“學習產出”的教育模式為指導,提供豐富新穎的習題,加強對學生“能力產出”的度量和考核,以適應工程教育認證的要求。本書為慕課(MOOC)教材,可以提供全套網絡教學資源,讓暫不具備這些數字化資源的學校和教師能快速開設“軟件質量保證與測試”“軟件測試”慕課/微課課程。

本書可作為應用型本科院校軟件工程、計算機等專業“軟件質量保證與測試”“軟件測試”課程的教材,也可作為軟件測試工程師的參考書。

作者簡介

王智鋼,研究方向為數據挖掘、軟件測試,發表“分布式並行關聯規則挖掘算法研究”等論文20余篇。主持建設的課程“軟件質量保證與測試”2023年獲評第二批國家級一流本科課程(線上線下混合式),主持“《軟件質量保證與測試》MOOC建設”等教育部產學合作協同育人項目3項,主持江蘇省高等教育教改研究課題“‘信創+新工科’模式下的軟件測試應用型人才培養探索與實踐”,主持江蘇省在線開放課程,建設的在線課程“軟件質量保證與測試”已在中國大學慕課開展9輪教學。獲金陵科技學院優秀教案及多媒體課件比賽一等獎、教育教學論文評比一等獎、微課教學比賽二等獎。

目錄大綱

第1章 緒論 1

1.1 軟件測試的產生與發展 1

1.1.1 軟件測試的產生 1

1.1.2 軟件測試的第一類測試方法 2

1.1.3 軟件測試的第二類測試方法 2

1.1.4 軟件測試與軟件質量 3

1.1.5 軟件測試及軟件測試觀念的發展過程 4

1.2 軟件缺陷、軟件錯誤和軟件失敗 4

1.2.1 第一個Bug 4

1.2.2 軟件缺陷 4

1.2.3 缺陷產生的原因 5

1.2.4 動態測試PIE模型 7

1.3 軟件測試的意義、原則和挑戰 9

1.3.1 軟件發展特點對軟件測試的影響 9

1.3.2 軟件缺陷導致的事故案例 11

1.3.3 軟件測試的意義 13

1.3.4 軟件測試的基本原則 15

1.3.5 關於測試的錯誤認識 16

1.3.6 軟件測試面臨的挑戰 16

1.4 質量意識、社會責任、工匠精神與創新 17

1.4.1 質量意識 17

1.4.2 社會責任 17

1.4.3 工匠精神 18

1.4.4 創新 18

1.5 信創測試 19

1.5.1 信創戰略 19

1.5.2 信創體系 19

1.5.3 信創測試簡介 20

習題一 21

第2章 軟件測試策略 25

2.1 軟件測試的模型和過程 25

2.1.1 軟件測試的模型 25

2.1.2 軟件測試的過程 27

2.2 軟件測試的方法和技術 28

2.2.1 靜態測試與動態測試 28

2.2.2 黑盒測試和白盒測試 29

2.2.3 手工測試與自動化測試 30

2.2.4 軟件測試的基本策略 30

2.3 軟件測試的組織和管理 31

2.3.1 人員和資源組織 31

2.3.2 過程和進度管理 32

2.3.3 測試文檔管理 37

2.3.4 測試用例管理 37

2.3.5 軟件缺陷管理 39

習題二 40

第3章 黑盒測試 42

3.1 黑盒測試簡介 42

3.2 等價類劃分測試法 43

3.2.1 等價類劃分 43

3.2.2 等價類劃分測試 46

3.2.3 等價類的組合 48

3.3 邊界值測試法 49

3.3.1 邊界值 49

3.3.2 邊界值測試用例設計 50

3.3.3 邊界值的組合 51

3.4 錯誤推測法 52

3.4.1 錯誤推測法簡介 52

3.4.2 登錄測試錯誤推測法應用 53

3.4.3 數據表操作測試錯誤推測法應用及示例 54

3.5 判定表驅動法 54

3.5.1 判定表 54

3.5.2 判定表的建立 56

3.5.3 判定表驅動測試示例 56

3.6 因果圖法 57

3.6.1 因果圖介紹 58

3.6.2 因果圖法設計測試用例的步驟 59

3.6.3 因果圖法設計測試用例示例 59

3.7 場景法 61

3.7.1 事件流 61

3.7.2 場景法設計測試用例的步驟 62

3.7.3 場景法應用示例 63

3.8 正交實驗法 64

3.8.1 正交實驗法應用背景 64

3.8.2 正交實驗法簡介 64

3.8.3 正交實驗法應用步驟和原則 65

3.8.4 正交實驗法應用示例 66

習題三 68

第4章 白盒測試 71

4.1 白盒測試簡介 71

4.2 靜態白盒測試 71

4.2.1 代碼檢查 72

4.2.2 靜態結構分析 73

4.2.3 程序流程分析 74

4.2.4 編程規範 75

4.2.5 靜態測試工具簡介 79

4.2.6 靜態測試工具安裝與使用 82

4.3 邏輯覆蓋 85

4.3.1 邏輯覆蓋簡介 86

4.3.2 語句覆蓋 86

4.3.3 判定覆蓋 88

4.3.4 條件覆蓋 89

4.3.5 條件/判定覆蓋 89

4.3.6 條件組合覆蓋 90

4.3.7 修正條件/判定覆蓋 91

4.3.8 覆蓋標準 91

4.4 基本路徑覆蓋 93

4.4.1 控制流圖 93

4.4.2 環路復雜度 95

4.4.3 基本路徑覆蓋及實例 96

4.5 測試覆蓋分析工具 100

4.5.1 JaCoCo 100

4.5.2 JCov 100

4.5.3 Cobertura 100

4.6 循環測試 101

4.6.1 基本循環結構測試 101

4.6.2 復合循環結構測試 102

4.7 程序變異測試 103

4.7.1 程序變異 104

4.7.2 變異測試 105

4.7.3 變異測試的優缺點 107

4.7.4 變異測試的企業應用示例 108

4.7.5 變異測試的科研應用示例 108

4.8 符號執行 109

4.8.1 符號執行簡介 109

4.8.2 符號執行示例 109

4.8.3 符號執行的特點和作用 110

4.9 程序插樁和調試 110

4.9.1 斷言 110

4.9.2 設計插樁 111

4.9.3 程序調試 114

習題四 115

第5章 軟件測試過程 121

5.1 單元測試 121

5.1.1 單元測試簡介 121

5.1.2 單元測試的任務 124

5.1.3 JUnit單元測試入門 128

5.2 集成測試 132

5.2.1 集成測試簡介 132

5.2.2 一次性集成與增量式集成 138

5.2.3 自頂向下集成與自底向上集成 139

5.2.4 基於調用圖的集成 142

5.2.5 其他集成測試方法 144

5.3 系統測試 150

5.3.1 系統測試簡介 150

5.3.2 系統測試項目 151

5.4 驗收測試 161

5.4.1 驗收測試簡介 161

5.4.2 驗收測試的分類 163

5.5 回歸測試 164

5.5.1 回歸測試簡介 164

5.5.2 實施回歸測試 165

習題五 166

第6章 面向對象測試 171

6.1 面向對象特點對測試的影響 171

6.1.1 封裝對測試的影響 171

6.1.2 繼承對測試的影響 171

6.1.3 多態對測試的影響 172

6.1.4 復雜的依賴關系對測試的影響 172

6.2 面向對象測試技術 173

6.2.1 面向對象測試技術簡介 173

6.2.2 類測試 173

6.3 面向對象示例 174

6.3.1 私有方法測試 174

6.3.2 多態測試 176

習題六 177

第7章 自動化測試 179

7.1 自動化測試技術和工具 179

7.1.1 自動化測試簡介 179

7.1.2 自動化測試的優點、局限性和適用情況 179

7.1.3 自動化測試工具 181

7.2 自動化黑盒測試 183

7.2.1 自動化黑盒測試的基本原理 183

7.2.2 自動化黑盒測試的相關技術 184

7.3 自動化白盒測試 186

7.3.1 自動化白盒測試工具思多普SDAP簡介 186

7.3.2 SDAP的應用 187

習題七 190

第8章 Web測試 192

8.1 Web測試環境搭建 192

8.1.1 安裝Java、Eclipse和Selenium 192

8.1.2 在eclipse 中加載selenium jar包 193

8.2 Web測試實踐 197

8.2.1 基本測試操作 197

8.2.2 入門實踐案例 200

8.2.3 進階實踐案例 202

習題八 205

第9章 軟件質量與質量保證 207

9.1 程序正確性的標準 207

9.1.1 軟件缺陷的分類 207

9.1.2 程序正確性的標準 207

9.2 程序中隱藏缺陷數量估計 207

9.2.1 種子模型法 208

9.2.2 Hyman估算法 208

9.2.3 回歸分析 209

9.3 軟件質量 210

9.3.1 軟件質量基本概念 210

9.3.2 相關概念 211

9.3.3 軟件質量特性 212

9.4 軟件質量模型和質量度量 213

9.4.1 軟件質量模型 213

9.4.2 軟件質量的度量 215

9.4.3 不同質量之間的關系 216

9.5 軟件質量管理與質量保證 217

9.5.1 軟件質量管理 217

9.5.2 軟件質量保證 218

9.5.3 軟件質量保證體系 219

9.6 質量理念和質量文化 221

9.6.1 概述 221

9.6.2 華為的質量理念和質量文化 222

習題九 223

第10章 安全測試 224

10.1 安全測試簡介 224

10.1.1 軟件安全測試概念和內涵 224

10.1.2 軟件安全測試的標準 225

10.1.3 軟件安全測試的原則 225

10.2 安全測試方法 226

10.2.1 靜態測試 226

10.2.2 模糊測試 227

10.2.3 對抗性測試 227

10.2.4 三種測試方法的比較 228

10.2.5 安全測試用例示例 229

10.3 安全測試示例 231

10.3.1 工具簡介 231

10.3.2 Webscan功能結構 231

10.3.3 Web安全測試過程 232

10.3.4 掃描結果 237

10.4 AI安全測試 240

10.4.1 代碼審計 241

10.4.2 動態測試與AI的深度融合 241

10.4.3 AI安全測試工具 242

習題十 242

參考文獻 244