第1章 軟件測試基礎 1
1.1 簡介 1
1.2 軟件開發生命周期中的測試 1
1.2.1 軟件開發生命周期模型 2
1.2.1.1 順序模型 2
1.2.1.2 增量迭代模型 6
1.2.1.3 模型中的測試 11
1.2.2 軟件測試級彆 12
1.2.2.1 組件測試 13
1.2.2.2 集成測試 16
1.2.2.3 係統測試 21
1.2.2.4 驗收測試 22
1.2.2.5 維護測試 23
1.3 特定係統 24
1.3.1 綜閤係統 24
1.3.2 安全關鍵係統 28
1.4 度量和測度 32
1.4.1 測度的意義和要求 34
1.4.1.1 測度的意義 34
1.4.1.2 測度的要求 38
.1.4.2 基本過程 40
1.4.2.1 確立和維持測度承諾 42
1.4.2.2 計劃測度過程 42
1.4.2.3 實施測度過程 45
1.4.2.4 評估測度 46
1.4.3 度量數據應用 47
1.4.3.1 案例分析:測試用例設計進度 47
1.4.3.2 案例分析:測試用例執行進度 48
1.4.3.3 案例分析:測試的充分性 49
1.4.3.4 案例分析:産品發布準則 51
1.5 道德規範 53
1.6 小結 53
第2章 測試過程 55
2.1 簡介 55
2.2 測試過程模型 56
2.3 測試計劃和控製 57
2.3.1 主要活動 57
2.3.2 測試計劃 62
2.3.3 測試執行進度 62
2.3.4 階段度量指標 63
2.4 測試分析和設計 64
2.4.1 主要活動 64
2.4.2 階段度量指標 65
2.5 測試實現和執行 66
2.5.1 主要活動 66
2.5.2 測試實現 68
2.5.2.1 測試規程規格說明 68
2.5.2.2 測試環境搭建 68
2.5.2.3 測試執行準備 72
2.5.3 測試執行 74
2.5.3.1 入口準則 74
2.5.3.2 測試結果比較 75
2.5.3.3 測試日誌 76
2.5.3.4 確認測試和迴歸測試 76
2.5.4 階段度量指標 77
2.6 評估齣口準則和報告 78
2.6.1 主要活動 78
2.6.2 評估齣口準則 78
2.6.3 測試報告 80
2.6.4 階段度量指標 80
2.7 測試結束活動 81
2.7.1 主要活動 81
2.7.2 數據收集和分析 82
2.7.3 經驗總結報告 83
2.8 小結 85
第3章 測試管理 86
3.1 簡介 86
3.2 測試管理文檔 89
3.2.1 測試方針 90
3.2.2 測試策略 91
3.2.3 主測試計劃 92
3.2.3.1 介紹 93
3.2.3.2 詳細內容 95
3.2.3.3 其他 96
3.2.4 級彆測試計劃 101
3.2.4.1 測試項和不測試項 102
3.2.4.2 測試的質量屬性 103
3.2.4.3 測試時間進度 105
3.2.4.4 測試準則定義 105
3.2.4.5 測試風險 108
3.2.4.6 測試文檔輸齣 109
3.2.4.7 角色和職責 109
3.2.5 級彆測試設計規格說明 110
3.2.6 級彆測試用例規格說明 111
3.2.7 級彆測試規程規格說明 112
3.2.8 級彆測試日誌 113
3.2.9 異常報告 114
3.2.10 級彆測試報告 116
3.2.11 主測試報告 117
3.3 測試計劃裁減 118
3.4 測試估算 119
3.4.1 影響因素 122
3.4.2 基於百分比的方法 125
3.4.3 基於專傢團隊的方法 125
3.4.4 基於類似項目的方法 127
3.4.5 基於工作分解結構的方法 127
3.5 測試計劃製定 128
3.5.1 盡早製定測試計劃 128
3.5.2 測試計劃的迭代 131
3.6 測試過程監控 133
3.6.1 風險 135
3.6.2 測試 138
3.6.2.1 案例分析:測試用例設計進度 138
3.6.2.2 案例分析:測試用例執行進度 139
3.6.3 覆蓋率 141
3.6.3.1 案例分析:基於需求的測試覆蓋率 141
3.6.3.2 案例分析:基於平颱的測試覆蓋率 142
3.6.4 缺陷 143
3.6.4.1 案例分析:缺陷發現階段分布 143
3.6.4.2 案例分析:缺陷所屬模塊分布 144
3.6.4.3 案例分析:發現缺陷的測試類型分布 145
3.6.5 信心 146
3.6.5.1 案例分析:測試發現缺陷狀態變化 146
3.6.5.2 案例分析:測試用例通過率 147
3.7 測試商業價值 148
3.7.1 預防成本 149
3.7.2 檢測成本 149
3.7.3 內部失效成本 150
3.7.4 外部失效成本 150
3.8 分布式測試、外包測試和內包測試 155
3.8.1 分布式測試 155
3.8.2 外包測試 156
3.8.3 內包測試 157
3.8.4 風險 158
3.9 基於風險的測試 161
3.9.1 什麼是基於風險的測試 161
3.9.1.1 風險的定義 161
3.9.1.2 産品風險和項目風險 162
3.9.1.3 基於風險的測試策略 163
3.9.2 風險管理過程 168
3.9.2.1 風險識彆 169
3.9.2.2 風險分析 175
3.9.2.3 風險應對 177
3.9.2.4 ISO/IEC 16805 182
3.9.3 風險管理實踐 189
3.9.4 基於風險的測試方法 191
3.9.4.1 作用和優點 192
3.9.4.2 基於FMEA的測試 197
3.9.4.3 注意點和誤區 206
3.10 失效模式和影響分析 207
3.10.1 什麼是FMEA 208
3.10.2 應用領域 211
3.10.2.1 産品 212
3.10.2.2 過程 213
3.10.3 實現步驟 213
3.10.3.1 瞭解分析對象 215
3.10.3.2 識彆失效模式 216
3.10.3.3 分析失效影響 217
3.10.3.4 確定嚴重程度 217
3.10.3.5 確定可能性 218
3.10.3.6 確定檢測難度 218
3.10.3.7 分析潛在原因 219
3.10.3.8 計算風險優先級因子 219
3.10.3.9 確定處理優先級 219
3.10.3.10 采取應對措施 220
3.10.3.11 重新計算RPN 221
3.10.4 收益與成本 221
3.10.5 確定RPN 222
3.11 測試管理難題 223
3.11.1 探索性測試 223
3.11.1.1 什麼是探索性測試 223
3.11.1.2 基於會話的測試管理 225
3.11.2 綜閤係統 226
3.11.3 安全關鍵係統 227
3.11.4 非功能性測試 228
3.12 小結 231
第4章 評審 233
4.1 簡介 233
4.2 基本原則 236
4.3 選擇閤適的評審類型 238
4.3.1 審查 238
4.3.2 技術評審 240
4.3.3 走查 240
4.3.4 非正式評審 241
4.3.5 管理評審和審計 242
4.3.6 特殊工作産品的評審 243
4.3.7 正式評審的開展 244
4.4 有效的評審過程 244
4.4.1 計劃階段 245
4.4.2 預備會階段 247
4.4.3 個人準備階段 247
4.4.4 評審會議階段 248
4.4.5 返工階段 249
4.4.6 跟蹤結果階段 249
4.5 評審成功因素 250
4.6 小結 252
第5章 缺陷管理 253
5.1 簡介 253
5.2 缺陷發現階段 255
5.3 缺陷生命周期 255
5.3.1 識彆 256
5.3.2 調查 257
5.3.3 改正 258
5.3.4 總結 259
5.3.5 案例 260
5.4 缺陷要素 264
5.5 缺陷度量 266
5.5.1 缺陷發現進度 266
5.5.2 缺陷修復進度 267
5.5.3 缺陷優先級 268
5.5.4 缺陷嚴重程度 270
5.6 缺陷溝通 271
5.7 小結 277
第6章 標準和測試過程改進 278
6.1 簡介 278
6.2 相關標準 278
6.2.1 標準的來源和有效性 278
6.2.2 國際標準 280
6.2.2.1 ISO 280
6.2.2.2 IEEE 281
6.2.3 國傢標準 282
6.2.4 特定領域標準 283
6.2.4.1 航空電子係統 284
6.2.4.2 航天工業 285
6.2.4.3 食品與藥物管理局 285
6.2.5 其他標準 285
6.3 測試改進過程 285
6.3.1 改進的方法 286
6.3.2 改進的類型 286
6.4 測試過程優化 287
6.5 TMM 288
6.5.1 成熟度等級 288
6.5.2 內部結構 291
6.5.3 評估模型 293
6.6 TPI 295
6.6.1 模型結構 295
6.6.2 評估過程 300
6.7 CTP 301
6.7.1 模型結構 301
6.7.2 評估模型 305
6.8 STEP 306
6.8.1 組成 306
6.8.2 架構 307
6.8.3 活動時序 308
6.8.4 工作産品 309
6.8.5 角色和職責 309
6.9 CMMI 310
6.9.1 模型組成 310
6.9.1.1 錶述方式 311
6.9.1.2 過程域 313
6.9.1.3 評估方法 314
6.9.2 驗證和確認 314
6.10 小結 316
第7章 測試工具與自動化 318
7.1 簡介 318
7.2 測試工具的概念 318
7.2.1 成本效益和風險 319
7.2.2 測試工具策略 322
7.2.3 測試工具集成 323
7.2.4 腳本和腳本語言 324
7.2.5 測試準則 328
7.2.6 測試工具部署 330
7.2.6.1 工具引入的成本效益 331
7.2.6.2 工具選擇 332
7.2.6.3 工具引入 332
7.2.7 開源測試工具 333
7.2.8 測試工具開發 335
7.3 測試工具分類 337
7.3.1 測試管理工具 338
7.3.2 測試執行工具 339
7.3.3 調試工具 341
7.3.4 錯誤傳播和注入工具 342
7.3.5 模擬器與仿真器 343
7.3.6 靜態和動態分析工具 343
7.3.6.1 靜態分析工具 343
7.3.6.2 動態分析工具 344
7.3.7 關鍵字驅動測試自動化 345
7.3.8 性能測試工具 345
7.3.9 Web測試工具 346
7.4 小結 347
第8章 個人技能和團隊構成 349
8.1 簡介 349
8.2 個人技能 349
8.2.1 角色和職責 350
8.2.2 軟技能 353
8.2.3 個人技能評估 356
8.3 團隊能力 359
8.3.1 團隊角色分類 360
8.3.2 案例:測試團隊分析 361
8.3.3 測試團隊優化 364
8.4 測試團隊獨立性 366
8.4.1 測試組織結構 366
8.4.2 測試外包 369
8.5 激勵 370
8.5.1 激勵方式 371
8.5.2 量化管理 376
8.6 溝通 377
8.6.1 正確對待缺陷 378
8.6.2 開發和測試的閤作 378
8.7 小結 379
參考文獻 381
附錄A IGMP需求列錶 383
示例目錄
☆示例:未來作戰係統 25
☆示例:企業級存儲設備 28
☆示例:美國食品和藥物管理局對軟件開發活動的要求 30
☆示例:安全關鍵係統組件 31
☆示例:Practical Software and Systems Measurement 33
☆示例:測試過程監控:測試執行進度 34
☆示例:測試過程改進 35
☆示例:測試團隊激勵 37
☆示例:係統測試執行入口準則 75
☆示例:編寫測試設計規格說明的測試任務 95
☆示例:智能寬帶接入服務器iBAS R1.0主測試計劃 97
☆示例:iBAS R1.0 IGMP係統測試計劃中對測試項和不測試項定義 103
☆示例:iBAS R1.0 IGMP係統測試計劃中定義的IGMP係統測試需要覆蓋的質量屬性 104
☆示例:iBAS R1.0 IGMP係統測試的進度甘特圖(部分) 105
☆示例:iBAS R1.0 IGMP係統測試計劃中定義的係統測試各種測試準則 107
☆示例:iBAS R1.0 IGMP係統測試風險列錶(部分) 108
☆示例:iBAS R1.0 IGMP係統測試中需要輸齣的文檔 109
☆示例:iBAS R1.0 IGMP係統測試中定義的角色和職責 110
☆示例:iBAS R1.0項目中對自動化測試的計劃 130
☆示例:iBAS R1.0項目測試計劃對於自動化測試內容的迭代 132
☆示例:內部失效成本 150
☆示例:應用質量成本分析測試的投資迴報 153
☆示例:風險應對和管理在iBAS R1.0項目IGMP功能中的應用 165
☆示例:風險問捲調查法 170
☆示例:風險模闆 171
☆示例:失效模式分析的模擬場景 172
☆示例:下麵是IGMP測試過程中,由於在早期沒有有效地管理和監控“采購IGMP測試儀錶”風險,而對後續測試執行導緻的後果 190
☆示例:探索性測試 224
☆示例:“IGMP係統需求規格說明”評審邀請信 246
☆示例:IGMP係統需求規格說明審查收集的數據 249
☆示例:iBAS R1.0中針對IGMP功能提交的一個缺陷報告 265
☆示例:缺陷發現進度度量 266
☆示例:缺陷修復進度度量 267
☆示例:缺陷優先級度量 268
☆示例:缺陷嚴重程度度量 270
☆示例:中華人民共和國標準法的部分描述 279
☆示例:中華人民共和國標準法部分內容 280
☆示例:中國標準分類 282
☆示例:DO-178B中的軟件生命周期數據 284
☆示例:TMM集成級中監控測試過程的子目標 291
☆示例:部分測試監控過程的ATRs 292
☆示例:驗證活動的方法 315
☆示例:確認活動的對象和方法 316
☆示例:iBAS R1.0項目的自動化測試用例挑選標準 321
☆示例:TOOL COMMAND LANGUAGE 325
☆示例:針對“創建文件”的檢查點 327
☆示例:開源測試工具 333
☆示例:iBAS項目自動化測試工具開發 335
☆示例:測試管理工具 339
☆示例:性能測試工具 346
☆示例:Selenium 347
☆示例:有效授權 372
☆示例:有效溝通 373
☆示例:提供學習和培訓的機會 374
☆示例:尊重和認可 375
☆示例:物質奬勵 375
· · · · · · (
收起)