本書全面闡述了軟件測(cè)試的基本理論和業(yè)界主流的技術(shù)方法,并從軟件生命周期的最新視角展開和分析軟件測(cè)試的知識(shí)、技術(shù)及應(yīng)用的策略、過程及方法。全書共10章:軟件測(cè)試概述、軟件生命周期的測(cè)試、軟件靜態(tài)測(cè)試技術(shù)、軟件動(dòng)態(tài)測(cè)試技術(shù)、軟件自動(dòng)化測(cè)試、軟件項(xiàng)目的組件測(cè)試、軟件系統(tǒng)性功能測(cè)試、軟件系統(tǒng)性能測(cè)試、軟件系統(tǒng)安全性測(cè)試、軟件測(cè)試管理,基本涵蓋了目前軟件測(cè)試的知識(shí)體系、技術(shù)體系和應(yīng)用體系。本書使讀者能系統(tǒng)、較快地掌握軟件測(cè)試的系統(tǒng)知識(shí),獲得解決實(shí)際測(cè)試問題的思路和基本的工程實(shí)踐方法。
第1章 軟件測(cè)試概述 1
1.1 軟件測(cè)試的產(chǎn)生與發(fā)展 2
1.1.1 軟件可靠性問題 2
1.1.2 軟件缺陷與故障 2
1.1.3 軟件測(cè)試的產(chǎn)生與發(fā)展 4
1.1.4 軟件測(cè)試的發(fā)展趨勢(shì) 7
1.2 軟件測(cè)試基礎(chǔ)知識(shí)與理論 8
1.2.1 軟件測(cè)試的目的與原則 8
1.2.2 軟件測(cè)試的基本原理與特性
準(zhǔn)則 8
1.2.3 軟件測(cè)試的基本策略 9
1.3 軟件開發(fā)模式與軟件測(cè)試 11
1.3.1 軟件開發(fā)模式 11
1.3.2 軟件開發(fā)與軟件測(cè)試 17
1.3.3 軟件測(cè)試模型分析 18
1.4 軟件質(zhì)量及其保證 21
1.4.1 軟件質(zhì)量體系 21
1.4.2 軟件測(cè)試成熟度 24
本章小結(jié) 28
習(xí)題與作業(yè) 28
第2章 軟件生命周期的測(cè)試 32
2.1 軟件生命周期中的測(cè)試 33
2.1.1 軟件生命周期 33
2.1.2 軟件生命周期中的測(cè)試策略 34
2.1.3 軟件測(cè)試通用流程 35
2.2 軟件測(cè)試技術(shù)分析 36
2.2.1 基于動(dòng)態(tài)測(cè)試分析與靜態(tài)
測(cè)試分析 36
2.2.2 基于規(guī)格說明的測(cè)試技術(shù) 37
2.2.3 基于結(jié)構(gòu)的測(cè)試技術(shù) 38
2.2.4 基于經(jīng)驗(yàn)的測(cè)試技術(shù) 39
2.2.5 手工測(cè)試與自動(dòng)化測(cè)試 42
2.2.6 基于風(fēng)險(xiǎn)的測(cè)試 43
2.2.7 軟件測(cè)試的分類 44
2.3 組件測(cè)試 46
2.3.1 組件測(cè)試的類別及模式 46
2.3.2 組件測(cè)試的任務(wù) 47
2.3.3 組件測(cè)試的過程 49
2.3.4 組件測(cè)試管理 49
2.4 集成測(cè)試 50
2.4.1 集成測(cè)試概念 50
2.4.2 集成測(cè)試策略 50
2.5 系統(tǒng)測(cè)試 52
2.5.1 系統(tǒng)測(cè)試的概念、對(duì)象、環(huán)境
與目標(biāo) 52
2.5.2 系統(tǒng)的功能性測(cè)試 52
2.5.3 系統(tǒng)測(cè)試的非功能性測(cè)試 54
2.6 確認(rèn)測(cè)試 57
2.6.1 確認(rèn)測(cè)試的準(zhǔn)則 57
2.6.2 程序修改后的確認(rèn)測(cè)試 58
2.6.3 配置與審查 58
2.7 驗(yàn)收測(cè)試 58
2.7.1 驗(yàn)收測(cè)試的含義 58
2.7.2 驗(yàn)收測(cè)試的任務(wù)及內(nèi)容 59
2.7.3 軟件文檔驗(yàn)收測(cè)試 60
2.8 軟件新版本的測(cè)試 60
2.8.1 軟件維護(hù)測(cè)試 60
2.8.2 軟件版本開發(fā)的測(cè)試 60
2.8.3 軟件增量開發(fā)中的測(cè)試 61
本章小結(jié) 63
習(xí)題與作業(yè) 64
第3章 軟件靜態(tài)測(cè)試技術(shù) 72
3.1 軟件靜態(tài)測(cè)試 73
3.1.1 靜態(tài)測(cè)試技術(shù)概要 73
3.1.2 靜態(tài)測(cè)試技術(shù) 74
3.2 程序數(shù)據(jù)流分析方法 76
3.2.1 數(shù)據(jù)流測(cè)試 76
3.2.2 數(shù)據(jù)流測(cè)試的應(yīng)用舉例 77
3.3 程序控制流分析方法 78
3.3.1 程序的控制流圖 78
3.3.2 將程序流程圖轉(zhuǎn)換為控制流圖 80
3.3.3 控制流圖分析的測(cè)試應(yīng)用 81
3.4 軟件的復(fù)雜性度量 82
3.4.1 靜態(tài)檢查與測(cè)試對(duì)象的規(guī)范、
標(biāo)準(zhǔn)的一致性 82
3.4.2 軟件復(fù)雜度的度量 82
3.4.3 Logiscope 靜態(tài)分析測(cè)試應(yīng)用 90
3.5 軟件評(píng)審 100
3.5.1 軟件評(píng)審的概念 100
3.5.2 評(píng)審的組織 101
3.5.3 評(píng)審過程 101
3.5.4 評(píng)審類型 102
本章小結(jié) 103
習(xí)題與作業(yè) 104
第4章 軟件動(dòng)態(tài)測(cè)試技術(shù) 109
4.1 軟件動(dòng)態(tài)測(cè)試技術(shù) 110
4.1.1 動(dòng)態(tài)測(cè)試 110
4.1.2 動(dòng)態(tài)測(cè)試(黑盒技術(shù))的
測(cè)試模型 112
4.2 等價(jià)類劃分法與邊界值分析法 113
4.2.1 等價(jià)類劃分法簡介 113
4.2.2 邊界值測(cè)試 117
4.2.3 等價(jià)類劃分測(cè)試法與邊界值
測(cè)試法結(jié)合設(shè)計(jì)測(cè)試用例 119
4.3 因果圖/決策表法 121
4.3.1 因果圖法 121
4.3.2 決策表法 123
4.3.3 因果圖/決策表法的測(cè)試應(yīng)用 126
4.4 狀態(tài)轉(zhuǎn)換法 131
4.4.1 狀態(tài)轉(zhuǎn)換法原理 131
4.4.2 運(yùn)用狀態(tài)轉(zhuǎn)換法設(shè)計(jì)測(cè)試
用例 133
4.5 全配對(duì)法 135
4.5.1 全配對(duì)法測(cè)試原理 135
4.5.2 全配對(duì)測(cè)試法應(yīng)用 138
4.6 覆蓋測(cè)試法 142
4.6.1 邏輯覆蓋 142
4.6.2 路徑覆蓋 147
4.6.3 循環(huán)的路徑測(cè)試 151
本章小結(jié) 153
習(xí)題與作業(yè) 154
第5章 軟件自動(dòng)化測(cè)試 166
5.1 軟件自動(dòng)化測(cè)試概念 167
5.1.1 自動(dòng)化測(cè)試的原理 167
5.1.2 自動(dòng)化測(cè)試的優(yōu)勢(shì)與特點(diǎn) 168
5.2 軟件自動(dòng)化測(cè)試生存周期
方法學(xué)及應(yīng)用 170
5.2.1 自動(dòng)化測(cè)試決策 170
5.2.2 測(cè)試工具獲取 170
5.2.3 自動(dòng)化測(cè)試引入 171
5.2.4 測(cè)試計(jì)劃、設(shè)計(jì)、開發(fā) 171
5.2.5 測(cè)試執(zhí)行與管理 172
5.2.6 測(cè)試評(píng)審與評(píng)估 173
5.3 自動(dòng)化測(cè)試用例與腳本 174
5.3.1 自動(dòng)化測(cè)試用例的生成要求 174
5.3.2 自動(dòng)化測(cè)試腳本 174
5.4 自動(dòng)化測(cè)試工具 176
5.4.1 自動(dòng)化測(cè)試的專項(xiàng)工具 176
5.4.2 自動(dòng)化測(cè)試套件 181
本章小結(jié) 190
習(xí)題與作業(yè) 191
第6章 軟件項(xiàng)目的組件測(cè)試 193
6.1 軟件項(xiàng)目的組件測(cè)試介紹 194
6.1.1 組件測(cè)試的范圍及內(nèi)容 194
6.1.2 軟件項(xiàng)目的組件測(cè)試解決
方案 194
6.2 軟件GUI的測(cè)試 197
6.2.1 頁面元素測(cè)試 197
6.2.2 對(duì)窗體操作的測(cè)試 198
6.2.3 對(duì)下拉式菜單與鼠標(biāo)操作
的測(cè)試 198
6.2.4 對(duì)數(shù)據(jù)項(xiàng)操作的測(cè)試 198
6.3 面向?qū)ο筌浖惖臏y(cè)試 199
6.3.1 類、對(duì)象、消息及接口 199
6.3.2 類的測(cè)試設(shè)計(jì) 202
6.4 Logiscope組件測(cè)試應(yīng)用 208
6.4.1 Logiscope概況 208
6.4.2 Logiscope功能 210
6.4.3 Logiscope的安裝與配置 211
6.4.4 TestChecker測(cè)試應(yīng)用 212
6.5 運(yùn)用JUnit進(jìn)行組件測(cè)試 220
6.5.1 JUnit的基本概要 220
6.5.2 運(yùn)用JUnit進(jìn)行組件測(cè)試 224
本章小結(jié) 230
習(xí)題與作業(yè) 231
第7章 軟件系統(tǒng)性功能測(cè)試 233
7.1 軟件系統(tǒng)性功能測(cè)試 234
7.1.1 軟件系統(tǒng)性功能測(cè)試的內(nèi)容 234
7.1.2 軟件系統(tǒng)性功能測(cè)試的
基本要素 235
7.2 軟件功能測(cè)試工具及應(yīng)用 236
7.2.1 RFT的一般概況 236
7.2.2 RFT的基本運(yùn)用方法 241
7.2.3 RPT的測(cè)試應(yīng)用 254
本章小結(jié) 260
習(xí)題與作業(yè) 260
第8章 軟件系統(tǒng)性能測(cè)試 262
8.1 軟件系統(tǒng)性能測(cè)試概述 263
8.1.1 軟件系統(tǒng)性能測(cè)試的概念 263
8.1.2 軟件系統(tǒng)性能測(cè)試規(guī)劃
與設(shè)計(jì) 267
8.1.3 軟件系統(tǒng)性能測(cè)試管理 270
8.2 Web性能測(cè)試 272
8.2.1 Web性能測(cè)試模型 272
8.2.2 Web性能測(cè)試用例設(shè)計(jì) 273
8.2.3 Web性能測(cè)試過程管理 278
8.3 軟件系統(tǒng)性能測(cè)試工具 279
8.3.1 RPT功能簡介 279
8.3.2 RPT的基本測(cè)試應(yīng)用分析 281
8.3.3 RPT性能測(cè)試工程應(yīng)用 286
本章小結(jié) 293
專業(yè)術(shù)語 293
習(xí)題與作業(yè) 294
第9章 軟件系統(tǒng)安全性測(cè)試 296
9.1 軟件系統(tǒng)安全性測(cè)試的問題 297
9.1.1 軟件系統(tǒng)安全性概述 297
9.1.2 軟件系統(tǒng)安全性測(cè)試策略 302
9.1.3 軟件系統(tǒng)安全性測(cè)試方法 303
9.2 Web應(yīng)用系統(tǒng)的安全性測(cè)試 305
9.2.1 Web應(yīng)用安全的背景 305
9.2.2 Web應(yīng)用安全測(cè)試 306
9.3 軟件系統(tǒng)安全測(cè)試工具及
測(cè)試應(yīng)用 310
9.3.1 AppScan概要 311
9.3.2 AppScan功能特性 312
9.3.3 AppScan的基本使用 320
9.3.4 AppScan安全性測(cè)試應(yīng)用 328
本章小結(jié) 330
習(xí)題與作業(yè) 330
第10章 軟件測(cè)試管理 332
10.1 軟件測(cè)試管理的概念 333
10.1.1 測(cè)試管理的基本要素 333
10.1.2 測(cè)試組織管理 334
10.2 測(cè)試過程管理 337
10.2.1 測(cè)試計(jì)劃管理 337
10.2.2 測(cè)試流程管理 340
10.3 測(cè)試事件管理 348
10.3.1 缺陷管理 348
10.3.2 測(cè)試用例管理 351
10.4 軟件配置管理 354
10.4.1 軟件配置管理的內(nèi)涵 354
10.4.2 配置管理策略與方法 356
10.4.3 配置管理的應(yīng)用 359
10.5 測(cè)試管理工具及應(yīng)用 360
10.5.1 TestDirector測(cè)試管理工具 360
10.5.2 Rational Test Manager測(cè)試
管理工具 366
本章小結(jié) 367
專業(yè)術(shù)語 367
習(xí)題與作業(yè) 368
參考文獻(xiàn) 372
本書此次修訂較第一版、第二版在體系結(jié)構(gòu)上做了較大調(diào)整與變動(dòng)。全書在內(nèi)容上做了整合與更新,使教材的容量基本保持不變而內(nèi)涵進(jìn)一步提升,突出軟件測(cè)試課程教程的功能,以更加符合學(xué)習(xí)規(guī)律、認(rèn)識(shí)規(guī)律,全面闡述軟件測(cè)試基本理論和業(yè)界主流的技術(shù)方法,并從軟件生命周期的最新視角闡述和分析軟件測(cè)試的知識(shí)、技術(shù)及應(yīng)用,運(yùn)用于工程中的策略、過程及方法,以期能基本涵蓋目前軟件測(cè)試領(lǐng)域的知識(shí)體系、技術(shù)體系和應(yīng)用體系。
本書由軟件測(cè)試概述、軟件生命周期的測(cè)試、軟件靜態(tài)測(cè)試技術(shù)、軟件動(dòng)態(tài)測(cè)試技術(shù)、軟件自動(dòng)化測(cè)試、軟件項(xiàng)目的組件測(cè)試、軟件系統(tǒng)性功能測(cè)試、軟件系統(tǒng)性能測(cè)試、軟件系統(tǒng)安全性測(cè)試、軟件測(cè)試管理共10章構(gòu)成。其中,軟件測(cè)試概述、軟件生命周期的測(cè)試兩章作為軟件測(cè)試的基本理論知識(shí)加以系統(tǒng)介紹;軟件靜態(tài)測(cè)試技術(shù)、軟件動(dòng)態(tài)測(cè)試技術(shù)、軟件自動(dòng)化測(cè)試三章作為測(cè)試方法及技術(shù)應(yīng)用分析的重點(diǎn);軟件項(xiàng)目的組件測(cè)試、軟件系統(tǒng)性功能測(cè)試、軟件系統(tǒng)性能測(cè)試、軟件系統(tǒng)安全性測(cè)試,軟件測(cè)試管理五章則從測(cè)試工程的角度進(jìn)行詳細(xì)深入的闡述。每章除了正文之外,還增加了有針對(duì)性的內(nèi)容提要與學(xué)習(xí)目標(biāo)的導(dǎo)學(xué)、本章小結(jié)等內(nèi)容。為進(jìn)一步體現(xiàn)和完善教材的功效,全書配備了例題、案例、習(xí)題、作業(yè)、應(yīng)用實(shí)踐項(xiàng)目共300多個(gè),并為每章的相關(guān)內(nèi)容加入了專業(yè)術(shù)語欄目與參考資料的索引。
本書內(nèi)容豐富、層次清晰、闡述簡明,較好地把握了所編選內(nèi)容的深度及廣度,使之不僅反映出軟件測(cè)試的發(fā)展脈絡(luò)、最新的研究與應(yīng)用成果,而且更加注重將理論知識(shí)、技術(shù)基礎(chǔ)與工程實(shí)踐進(jìn)行有機(jī)融合,使讀者能系統(tǒng)、較快地學(xué)習(xí)到軟件測(cè)試的系統(tǒng)知識(shí)與主流技術(shù),獲得解決實(shí)際測(cè)試問題的思路,掌握基本的工程方法與運(yùn)用的策略。
本書是中國大學(xué)精品共享資源課程(愛課網(wǎng))軟件測(cè)試的配套主教材,以期作為高等學(xué)校軟件測(cè)試課程的一本專門教程,成為軟件測(cè)試工程師的首選讀本,為進(jìn)一步掌握、提高測(cè)試專業(yè)能力和職業(yè)發(fā)展起到奠基的作用。
本書涵蓋了國際軟件測(cè)試工程師認(rèn)證(ISTQB FL/AL)大綱2007版所規(guī)定的許多內(nèi)容,因此可作為準(zhǔn)備參加此項(xiàng)專業(yè)認(rèn)考的參考資料。
本書含有大量的算法語句、程序語句及計(jì)算公式,對(duì)于其中的變量,為了方便讀者閱讀,避免歧義,不再區(qū)分正、斜體,而是統(tǒng)一采用正體,特此說明。
賀萌、吳曉園、楊艷、夏輝、徐芳、李健、李曉兵、趙琳也參與了本書的編寫與資料整理工作,在此一并感謝。
本書從首版編寫到第3版的出版,始終得到電子工業(yè)出版社的大力、持久的支持和幫助,在此謹(jǐn)表敬意與衷心感謝。
因作者水平所限,書中的錯(cuò)誤和不妥在所難免,懇請(qǐng)讀者批評(píng)指正和提出改進(jìn)建議。
聯(lián)系電子郵箱:he_ping2002@163.com
編 著 者
2013年12月