第一部分 軟件測(cè)試能力和資格的評(píng)估
第1章 評(píng)估軟件測(cè)試的能力和人員資格 3
1.1 軟件測(cè)試涉及的人員 3
1.2 軟件測(cè)試的多種角色 4
1.2.1 制造 4
1.2.2 創(chuàng)作車間 4
1.2.3 專業(yè)化過程 4
1.3 什么是缺陷 5
1.3.1 缺陷與故障 5
1.3.2 過程問題與缺陷率 5
1.4 軟件測(cè)試的商業(yè)前景 6
1.5 現(xiàn)有的測(cè)試過程和測(cè)試人員的狀況如何 6
1.5.1 評(píng)估現(xiàn)有測(cè)試過程的質(zhì)量 7
1.5.2 評(píng)估測(cè)試人員的素質(zhì) 11
1.6 小結(jié) 14
第二部分 搭建軟件測(cè)試環(huán)境
第2章 制定軟件測(cè)試策略 23
2.1 計(jì)算機(jī)系統(tǒng)的策略風(fēng)險(xiǎn) 23
2.2 經(jīng)濟(jì)學(xué)測(cè)試 24
2.3 常見的計(jì)算機(jī)問題 25
2.3.1 軟件問題 25
2.3.2 數(shù)據(jù)問題 26
2.4 系統(tǒng)開發(fā)生命周期的經(jīng)濟(jì)學(xué)測(cè)試 26
2.5 測(cè)試是一個(gè)組織問題 26
2.6 建立測(cè)試原則 28
2.7 測(cè)試的結(jié)構(gòu)化方法 29
2.7.1 需求 31
2.7.2 設(shè)計(jì) 31
2.7.3 編程(創(chuàng)建/構(gòu)建) 31
2.7.4 測(cè)試過程 31
2.7.5 安裝 32
2.7.6 維護(hù) 32
2.8 測(cè)試策略 32
2.8.1 測(cè)試因素 32
2.8.2 制定測(cè)試策略 35
2.8.3 創(chuàng)建測(cè)試策略樣例 36
2.9 測(cè)試方法論 37
2.10 軟件測(cè)試的狀況 38
2.11 小結(jié) 39
第3章 建立軟件測(cè)試方法論 41
3.1 需要測(cè)試什么 41
3.2 為什么缺陷難以發(fā)現(xiàn) 41
3.3 減少測(cè)試費(fèi)用 42
3.4 什么是驗(yàn)證和確認(rèn) 44
3.5 功能和結(jié)構(gòu)測(cè)試 45
3.5.1 為什么使用兩種測(cè)試方法 46
3.5.2 使用驗(yàn)證和確認(rèn)技術(shù)進(jìn)行的結(jié)構(gòu)和功能測(cè)試 46
3.6 工作流程的概念 46
3.7 開發(fā)測(cè)試方法論中要考慮的8個(gè)問題 48
3.7.1 獲取和研究測(cè)試策略 48
3.7.2 確定開發(fā)項(xiàng)目的類型 49
3.7.3 確定軟件系統(tǒng)的類型 49
3.7.4 確定項(xiàng)目的范圍 50
3.7.5 確定戰(zhàn)術(shù)風(fēng)險(xiǎn) 50
3.7.6 確定何時(shí)進(jìn)行測(cè)試 51
3.7.7 建立系統(tǒng)測(cè)試計(jì)劃 52
3.7.8 建立單元測(cè)試計(jì)劃 52
3.8 測(cè)試戰(zhàn)術(shù)檢查單 54
3.9 小結(jié) 54
第4章 確定軟件測(cè)試技術(shù) 65
4.1 應(yīng)用程序適應(yīng)性的概念 65
4.2 測(cè)試技術(shù)/工具的選擇過程 65
4.2.1 結(jié)構(gòu)測(cè)試與功能測(cè)試 66
4.2.2 動(dòng)態(tài)測(cè)試與靜態(tài)測(cè)試 67
4.2.3 人工測(cè)試與自動(dòng)測(cè)試 68
4.3 測(cè)試技術(shù)/工具的選擇 68
4.4 結(jié)構(gòu)化系統(tǒng)測(cè)試技術(shù) 68
4.4.1 壓力測(cè)試技術(shù) 69
4.4.2 執(zhí)行測(cè)試技術(shù) 70
4.4.3 恢復(fù)測(cè)試技術(shù) 71
4.4.4 操作測(cè)試技術(shù) 72
4.4.5 一致性測(cè)試技術(shù) 73
4.4.6 安全性測(cè)試技術(shù) 74
4.5 功能性系統(tǒng)測(cè)試技術(shù) 75
4.5.1 需求測(cè)試技術(shù) 75
4.5.2 回歸測(cè)試技術(shù) 76
4.5.3 錯(cuò)誤處理測(cè)試技術(shù) 77
4.5.4 人工支持測(cè)試技術(shù) 78
4.5.5 系統(tǒng)間測(cè)試技術(shù) 79
4.5.6 控制測(cè)試技術(shù) 80
4.5.7 平行測(cè)試技術(shù) 81
4.6 單元測(cè)試技術(shù) 81
4.7 功能測(cè)試和分析 82
4.8 功能測(cè)試 82
4.8.1 獨(dú)立于規(guī)格說明技術(shù)的測(cè)試 82
4.8.2 基于規(guī)格說明技術(shù)的測(cè)試 83
4.8.3 結(jié)構(gòu)測(cè)試和分析 84
4.8.4 面向錯(cuò)誤的測(cè)試和分析 85
4.8.5 單元測(cè)試和分析的管理 87
4.9 測(cè)試因素/測(cè)試技術(shù)矩陣 88
4.10 小結(jié) 88
第5章 軟件測(cè)試工具的選擇和安裝 90
5.1 測(cè)試工具—測(cè)試的“錘子” 90
5.2 測(cè)試工具的選擇和使用 94
5.2.1 第1步, 將工具及其用途進(jìn)行匹配 95
5.2.2 第2步, 選擇適合于軟件生命周期各階段的工具 95
5.2.3 第3步, 選擇與測(cè)試人員的技能水平相符的測(cè)試工具 95
5.2.4 第4步, 選擇可支付的工具 99
5.2.5 如果完成第4步后所有的工具都被排除了, 那該如何做 101
5.3 指定測(cè)試工具管理者 101
5.3.1 第1步, 選擇工具管理者 102
5.3.2 第2步, 為工具管理者分配任務(wù) 102
5.3.3 第3步, 限定工具管理者的任期 103
5.4 小結(jié) 104
第三部分 11步軟件測(cè)試過程
第6章 11步軟件測(cè)試過程概述 109
6.1 計(jì)算機(jī)測(cè)試的費(fèi)用 109
6.1.1 確定消除缺陷的費(fèi)用 110
6.1.2 降低測(cè)試的費(fèi)用 111
6.2 生命周期測(cè)試 111
6.2.1 定義過程 112
6.2.2 使用V-測(cè)試概念 113
6.2.3 組建軟件開發(fā)項(xiàng)目組 113
6.2.4 組建軟件開發(fā)測(cè)試小組 113
6.3 軟件開發(fā)過程中的驗(yàn)證和確認(rèn) 115
6.4 11步軟件測(cè)試過程 115
6.5 工作流程所需的技能 117
6.6 小結(jié) 118
第7章 第1步, 評(píng)估項(xiàng)目管理開發(fā)的估算和狀態(tài) 120
7.1 概述 120
7.2 目標(biāo) 120
7.3 涉及的問題 120
7.4 工作流程 122
7.5 輸入 122
7.6 執(zhí)行過程 122
7.6.1 任務(wù)1:測(cè)試軟件估算的有效性 122
7.6.2 任務(wù)2:測(cè)試軟件系統(tǒng)的狀態(tài) 131
7.7 檢查過程 139
7.8 輸出 139
7.9 原則 139
7.10 小結(jié) 139
第8章 第2步, 制定測(cè)試計(jì)劃 143
8.1 概述 143
8.2 目標(biāo) 143
8.3 涉及的問題 144
8.4 工作流程 145
8.5 輸入 146
8.6 執(zhí)行過程 146
8.6.1 任務(wù)1:組建測(cè)試小組 146
8.6.2 任務(wù)2:了解項(xiàng)目風(fēng)險(xiǎn) 148
8.6.3 任務(wù)3:制定測(cè)試計(jì)劃 154
8.6.4 任務(wù)4:審查測(cè)試計(jì)劃 160
8.7 檢查過程 167
8.8 輸出 167
8.9 原則 167
8.10 小結(jié) 168
第9章 第3步, 需求階段測(cè)試 183
9.1 概述 183
9.2 目標(biāo) 184
9.3 涉及的問題 185
9.4 工作流程 185
9.5 輸入 185
9.6 執(zhí)行過程 186
9.6.1 任務(wù)1:準(zhǔn)備風(fēng)險(xiǎn)矩陣 186
9.6.2 任務(wù)2:進(jìn)行需求階段的測(cè)試因素分析 192
9.6.3 任務(wù)3:執(zhí)行需求走查 194
9.7 檢查過程 196
9.8 輸出 196
9.9 原則 196
9.10 小結(jié) 196
第10章 第4步, 設(shè)計(jì)階段測(cè)試 206
10.1 概述 206
10.2 目標(biāo) 206
10.3 涉及的問題 206
10.4 工作流程 208
10.5 輸入 208
10.6 執(zhí)行過程 209
10.6.1 任務(wù)1:給成功因素評(píng)分 209
10.6.2 任務(wù)2:分析測(cè)試因素 211
10.6.3 任務(wù)3:進(jìn)行設(shè)計(jì)評(píng)審 213
10.6.4 任務(wù)4:審查設(shè)計(jì)的可交付性 214
10.7 檢查過程 214
10.8 輸出 215
10.9 原則 215
10.10 小結(jié) 215
第11章 第5步, 編程階段測(cè)試 238
11.1 概述 238
11.2 目標(biāo) 239
11.3 涉及的問題 239
11.4 工作流程 239
11.5 輸入 240
11.6 執(zhí)行過程 241
11.6.1 任務(wù)1:對(duì)程序進(jìn)行桌面調(diào)試 241
11.6.2 任務(wù)2:分析編程階段測(cè)試因素 242
11.6.3 任務(wù)3:執(zhí)行同行評(píng)審 244
11.7 檢查過程 246
11.8 輸出 246
11.9 原則 246
11.10 小結(jié) 246
第12章 第6步, 執(zhí)行測(cè)試并記錄結(jié)果 257
12.1 概述 257
12.2 目標(biāo) 257
12.3 涉及的問題 257
12.4 工作流程 259
12.5 輸入 259
12.6 執(zhí)行過程 260
12.6.1 任務(wù)1:構(gòu)造測(cè)試數(shù)據(jù) 260
12.6.2 任務(wù)2:執(zhí)行測(cè)試 274
12.6.3 任務(wù)3:記錄測(cè)試結(jié)果 276
12.7 檢查過程 278
12.8 輸出 278
12.9 原則 278
12.10 小結(jié) 279
第13章 第7步, 驗(yàn)收測(cè)試 291
13.1 概述 291
13.2 目標(biāo) 291
13.3 涉及的問題 294
13.4 工作流程 294
13.5 輸入 294
13.6 執(zhí)行過程 295
13.6.1 任務(wù)1:定義驗(yàn)收標(biāo)準(zhǔn) 295
13.6.2 任務(wù)2:制定驗(yàn)收計(jì)劃 297
13.6.3 任務(wù)3:執(zhí)行驗(yàn)收計(jì)劃(進(jìn)行驗(yàn)收測(cè)試和評(píng)審) 298
13.6.4 任務(wù)4:得出驗(yàn)收結(jié)果 302
13.7 檢查過程 305
13.8 輸出 305
13.9 原則 305
13.10 小結(jié) 305
第14章 第8步, 報(bào)告測(cè)試結(jié)果 309
14.1 概述 309
14.2 目標(biāo) 310
14.3 涉及的問題 311
14.4 工作流程 311
14.5 輸入 312
14.5.1 測(cè)試計(jì)劃和項(xiàng)目計(jì)劃 312
14.5.2 預(yù)期的處理結(jié)果 312
14.5.3 測(cè)試中收集的數(shù)據(jù) 312
14.5.4 存儲(chǔ)測(cè)試過程中收集的數(shù)據(jù) 313
14.6 執(zhí)行過程 313
14.6.1 任務(wù)1:報(bào)告軟件狀態(tài) 314
14.6.2 任務(wù)2:報(bào)告中間測(cè)試結(jié)果 319
14.6.3 獨(dú)立項(xiàng)目構(gòu)件測(cè)試結(jié)果 326
14.6.4 任務(wù)3:報(bào)告最終測(cè)試結(jié)果 327
14.7 檢查過程 328
14.8 輸出 329
14.9 原則 329
14.10 小結(jié) 329
第15章 第9步, 測(cè)試軟件安裝 333
15.1 概述 333
15.2 目標(biāo) 333
15.3 涉及的問題 334
15.4 工作流程 335
15.5 輸入 336
15.6 執(zhí)行過程 336
15.6.1 任務(wù)1a:新系統(tǒng)的安裝測(cè)試 336
15.6.2 任務(wù)1b:測(cè)試軟件的變更版本 338
15.6.3 任務(wù)2:監(jiān)控產(chǎn)品 341
15.6.4 任務(wù)3:文檔化問題 342
15.7 檢查過程 342
15.8 輸出 342
15.9 原則 342
15.10 小結(jié) 343
第16章 第10步, 測(cè)試軟件變更 352
16.1 概述 352
16.2 目標(biāo) 352
16.3 涉及的問題 353
16.4 工作流程 354
16.5 輸入 355
16.6 執(zhí)行過程 355
16.6.1 任務(wù)1:制定/更新測(cè)試計(jì)劃 355
16.6.2 任務(wù)2:開發(fā)/更新測(cè)試數(shù)據(jù) 356
16.6.3 任務(wù)3:測(cè)試變更控制過程 358
16.6.4 任務(wù)4:執(zhí)行測(cè)試 359
16.6.5 任務(wù)5:開發(fā)/更新培訓(xùn)材料 360
16.7 檢查過程 362
16.8 輸出 362
16.8.1 是否可接受自動(dòng)化應(yīng)用系統(tǒng) 362
16.8.2 是否可接受人工部分 363
16.9 原則 364
16.9.1 進(jìn)行測(cè)試調(diào)整 364
16.9.2 進(jìn)行培訓(xùn)調(diào)整 364
16.9.3 軟件變更反饋 364
16.10 小結(jié) 365
第17章 第11步, 評(píng)價(jià)測(cè)試的有效性 378
17.1 概述 378
17.2 目標(biāo) 378
17.3 涉及的問題 378
17.4 工作流程 379
17.5 輸入 381
17.6 執(zhí)行過程 381
17.6.1 任務(wù)1:確定評(píng)估目標(biāo) 381
17.6.2 任務(wù)2:確定度量?jī)?nèi)容 382
17.6.3 任務(wù)3:指定度量責(zé)任 382
17.6.4 任務(wù)4:選擇評(píng)估方法 382
17.6.5 任務(wù)5:確定所需事實(shí) 383
17.6.6 任務(wù)6:收集評(píng)估數(shù)據(jù) 383
17.6.7 任務(wù)7:評(píng)估測(cè)試有效性 383
17.7 檢查過程 386
17.8 輸出 386
17.9 原則 387
17.10 小結(jié) 387
第四部分 專用系統(tǒng)和應(yīng)用的測(cè)試
第18章 測(cè)試客戶/服務(wù)器系統(tǒng) 391
18.1 概述 391
18.2 目標(biāo) 391
18.3 涉及的問題 391
18.4 工作流程 392
18.5 輸入 392
18.6 執(zhí)行過程 392
18.6.1 任務(wù)1:評(píng)估準(zhǔn)備情況 392
18.6.2 任務(wù)2:評(píng)估關(guān)鍵組成部分 399
18.6.3 任務(wù)3:測(cè)試系統(tǒng) 399
18.7 檢查過程 399
18.8 輸出 399
18.9 原則 400
18.10 小結(jié) 400
第19章 測(cè)試快速應(yīng)用開發(fā)系統(tǒng) 406
19.1 概述 406
19.2 目標(biāo) 406
19.3 涉及的問題 406
19.3.1 迭代過程中的測(cè)試信息 407
19.3.2 測(cè)試組件信息 407
19.3.3 測(cè)試性能信息 407
19.3.4 記錄測(cè)試信息 407
19.4 工作流程 407
19.5 輸入 408
19.6 執(zhí)行過程 408
19.6.1 測(cè)試迭代的快速開發(fā) 408
19.6.2 螺旋測(cè)試 409
19.6.3 任務(wù)1:測(cè)試計(jì)劃的迭代 410
19.6.4 任務(wù)2:測(cè)試中間計(jì)劃的迭代 411
19.6.5 任務(wù)3:測(cè)試最終計(jì)劃的迭代 412
19.7 檢查過程 412
19.8 輸出 412
19.9 原則 412
19.10 小結(jié) 413
第20章 測(cè)試系統(tǒng)文檔的恰當(dāng)性 418
20.1 概述 418
20.2 目標(biāo) 418
20.3 涉及的問題 418
20.4 工作流程 419
20.5 輸入 420
20.6 執(zhí)行過程 421
20.6.1 任務(wù)1:度量項(xiàng)目文檔需求 421
20.6.2 任務(wù)2:確定必須生成的文檔 422
20.6.3 任務(wù)3:確定單獨(dú)文檔的完整性 425
20.6.4 任務(wù)4:確定項(xiàng)目文檔是否符合實(shí)際 426
20.7 檢查過程 427
20.8 輸出 427
20.9 原則 427
20.10 小結(jié) 428
第21章 測(cè)試基于Web的系統(tǒng) 431
21.1 概述 431
21.1.1 客戶/服務(wù)器體系結(jié)構(gòu) 431
21.1.2 基于Web的體系結(jié)構(gòu) 431
21.2 目標(biāo) 432
21.3 涉及的問題 432
21.4 工作流程 433
21.5 輸入 433
21.6 執(zhí)行過程 434
21.6.1 任務(wù)1:選擇基于Web的風(fēng)險(xiǎn)加入到測(cè)試計(jì)劃中 434
21.6.2 任務(wù)2:選擇基于Web的測(cè)試 437
21.6.3 任務(wù)3:選擇基于Web系統(tǒng)的測(cè)試工具 439
21.6.4 任務(wù)4:執(zhí)行Web系統(tǒng)的測(cè)試 439
21.7 檢查過程 440
21.8 輸出 440
21.9 原則 440
21.10 小結(jié) 440
第22章 測(cè)試成品軟件 443
22.1 概述 443
22.2 目標(biāo) 443
22.3 涉及的問題 443
22.4 工作流程 444
22.5 輸入 444
22.6 執(zhí)行過程 444
22.6.1 任務(wù)1:測(cè)試業(yè)務(wù)適應(yīng)性 445
22.6.2 任務(wù)2:測(cè)試操作適應(yīng)性 447
22.6.3 任務(wù)3:測(cè)試人員適應(yīng)性 451
22.6.4 任務(wù)4:確認(rèn)軟件處理的驗(yàn)收測(cè)試 451
22.7 檢查過程 453
22.8 輸出 453
22.9 原則 453
22.10 小結(jié) 454
第23章 多平臺(tái)環(huán)境的測(cè)試 460
23.1 概述 460
23.2 目標(biāo) 460
23.3 涉及的問題 460
23.4 工作流程 460
23.5 輸入 461
23.6 執(zhí)行過程 462
23.6.1 任務(wù)1:定義平臺(tái)配置涉及的問題 462
23.6.2 任務(wù)2:列出所需平臺(tái)配置 463
23.6.3 任務(wù)3:評(píng)估測(cè)試實(shí)驗(yàn)室配置 463
23.6.4 任務(wù)4:列出平臺(tái)影響的軟件組件 463
23.6.5 任務(wù)5:列出接口平臺(tái)的影響 465
23.6.6 任務(wù)6:執(zhí)行測(cè)試 465
23.7 檢查過程 465
23.8 輸出 465
23.9 原則 466
23.10 小結(jié) 466
第24章 安全性測(cè)試 471
24.1 概述 471
24.2 目標(biāo) 471
24.3 涉及的問題 471
24.4 工作流程 471
24.5 輸入 472
24.6 執(zhí)行過程 473
24.6.1 任務(wù)1:明確潛在的安全隱患 473
24.6.2 任務(wù)2:明確潛在的入侵點(diǎn) 473
24.6.3 任務(wù)3:創(chuàng)建入侵矩陣 476
24.6.4 任務(wù)4:明確高風(fēng)險(xiǎn)入侵點(diǎn) 477
24.6.5 任務(wù)5:執(zhí)行安全性測(cè)試 478
24.7 檢查過程 478
24.8 輸出 479
24.9 原則 479
24.10 小結(jié) 479
第25章 測(cè)試數(shù)據(jù)倉(cāng)庫(kù) 482
25.1 概述 482
25.2 目標(biāo) 482
25.3 涉及的問題 482
25.4 工作流程 483
25.5 輸入 483
25.6 執(zhí)行過程 484
25.6.1 任務(wù)1:度量數(shù)據(jù)倉(cāng)庫(kù)的問題數(shù)量 484
25.6.2 任務(wù)2:明確要測(cè)試的數(shù)據(jù)倉(cāng)庫(kù)活動(dòng)過程 484
25.6.3 任務(wù)3:測(cè)試數(shù)據(jù)倉(cāng)庫(kù)活動(dòng)過程的充分性 488
25.7 檢查過程 491
25.8 輸出 491
25.9 原則 491
25.10 小結(jié) 491
第五部分 創(chuàng)建測(cè)試文檔
第26章 創(chuàng)建測(cè)試文檔 505
26.1 使用 505
26.2 類型 506
26.3 責(zé)任 506
26.4 存儲(chǔ) 506
26.5 測(cè)試計(jì)劃文檔 506
26.5.1 第一部分:一般信息 507
26.5.2 第二部分:計(jì)劃 507
26.5.3 第三部分:規(guī)格說明和評(píng)價(jià) 508
26.5.4 第四部分:測(cè)試說明 508
26.6 測(cè)試分析報(bào)告文檔 511
26.6.1 第一部分:一般信息 511
26.6.2 第二部分:測(cè)試結(jié)果和結(jié)論 511
26.6.3 第三部分:軟件功能結(jié)論 511
26.6.4 第四部分:分析小結(jié) 512
26.7 小結(jié) 513