《軟件質(zhì)量保證與測試》共分10章,涵蓋了軟件質(zhì)量保證與測試基礎(chǔ)、軟件測試策略、白盒測試、黑盒測試、單元測試、性能測試、自動化測試、軟件評審、軟件質(zhì)量與質(zhì)量保證、測試的組織和管理等內(nèi)容。全書詳細(xì)介紹了軟件質(zhì)量保證與測試的基礎(chǔ)知識,講解了軟件測試涉及的所有流程,并介紹了多款軟件測試工具,將理論知識與實踐操作技能有機結(jié)合,有助于學(xué)生完整、系統(tǒng)地掌握軟件質(zhì)量保證與測試技術(shù),提高實踐創(chuàng)新能力。
《軟件質(zhì)量保證與測試》可作為軟件工程、計算機科學(xué)與技術(shù)等相關(guān)本科專業(yè)教材,也可供相關(guān)的專業(yè)人員參考使用。
第1章 軟件質(zhì)量保證與測試基礎(chǔ)
1.1 軟件 001
1.1.1 軟件生命周期 001
1.1.2 軟件開發(fā)模型 002
1.1.3 軟件質(zhì)量概述 008
1.2 軟件缺陷管理 012
1.2.1 軟件缺陷產(chǎn)生的原因 012
1.2.2 軟件缺陷分類 013
1.2.3 軟件缺陷的處理流程 014
1.2.4 常見的軟件缺陷管理工具 015
1.3 軟件測試與軟件開發(fā) 018
1.4 軟件測試概述 018
1.4.1 軟件測試簡述 019
1.4.2 軟件測試+AI 020
1.4.3 軟件測試的目的 021
1.5 軟件測試流程 022
1.5.1 分析測試需求 022
1.5.2 制訂測試計劃 023
1.5.3 設(shè)計測試用例 023
1.5.4 執(zhí)行測試 023
1.5.5 編寫測試報告 024
本章小結(jié) 024
本章習(xí)題 025
第2章 軟件測試策略
2.1 軟件測試模型 027
2.1.1 V模型 028
2.1.2 W模型 029
2.1.3 X模型 030
2.1.4 H模型 031
2.2 軟件測試的方法和技術(shù) 032
2.2.1 靜態(tài)測試和動態(tài)測試 032
2.2.2 黑盒測試和白盒測試 034
2.2.3 手工測試和自動化測試 035
2.3 軟件測試的基本策略 036
2.3.1 單元測試 036
2.3.2 集成測試 037
2.4 軟件測試的原則 037
本章小結(jié) 039
本章習(xí)題 039
第3章 白盒測試
3.1 引言 041
3.1.1 白盒測試的定義與重要性 041
3.1.2 白盒測試與黑盒測試的區(qū)別 041
3.1.3 白盒測試的應(yīng)用場景 042
3.2 邏輯覆蓋法 043
3.2.1 語句覆蓋 043
3.2.2 分支覆蓋 045
3.2.3 條件覆蓋 045
3.2.4 判定-條件覆蓋 046
3.2.5 條件組合覆蓋 047
3.2.6 實例:三角形的邏輯覆蓋 048
3.2.7 循環(huán)測試技術(shù) 050
3.3 基本路徑測試覆蓋 051
3.3.1 控制流圖 051
3.3.2 環(huán)路復(fù)雜度 052
3.3.3 基本路徑覆蓋及實例 053
3.4 測試覆蓋分析工具 056
3.4.1 JaCoCo 056
3.4.2 JCov 057
3.4.3 Cobertura 057
3.4.4 EclEmma 057
3.5 程序插樁法 066
3.5.1 目標(biāo)代碼插樁 066
3.5.2 源代碼插樁 069
3.5.3 實例:對學(xué)生類插入代碼 070
3.6 靜態(tài)測試工具 071
3.6.1 FindBugs 072
3.6.2 PMD 074
3.6.3 CheckStyle 077
3.6.4 其他靜態(tài)測試工具 078
本章小結(jié) 079
本章習(xí)題 079
第4章 黑盒測試
4.1 黑盒測試基礎(chǔ) 081
4.1.1 黑盒測試的應(yīng)用場景 081
4.1.2 測試需求分析與規(guī)格說明書 081
4.2 等價類劃分法 081
4.2.1 等價類劃分法的概念 082
4.2.2 實例:三角形問題的等價類劃分 083
4.3 邊界值分析法 085
4.3.1 邊界值分析法的概念 085
4.3.2 實例:三角形問題的邊界值分析 086
4.4 因果圖與決策表法 087
4.4.1 因果圖法 087
4.4.2 決策表的構(gòu)建 090
4.5 錯誤推測法 093
4.5.1 基于經(jīng)驗的錯誤預(yù)測 093
4.5.2 錯誤推測法的應(yīng)用示例 094
4.6 正交實驗設(shè)計方法 094
4.6.1 正交實驗設(shè)計方法概述 094
4.6.2 實例:微信Web頁面運行環(huán)境正交實驗設(shè)計 097
4.6.3 工具:正交設(shè)計助手的使用 098
4.7 組合測試方法 102
4.7.1 基本概念 102
4.7.2 詳細(xì)方法 103
4.8 場景法 105
本章小結(jié) 106
本章習(xí)題 106
第5章 單元測試
5.1 單元測試的目的和任務(wù) 108
5.1.1 單元測試的目的 108
5.1.2 單元測試的目標(biāo)和要求 109
5.1.3 單元測試的任務(wù) 110
5.2 單元測試的原則 112
5.3 JUnit框架介紹 113
5.3.1 JUnit的歷史與發(fā)展 113
5.3.2 JUnit的關(guān)鍵注解 122
5.3.3 斷言 124
5.3.4 參數(shù)化測試 130
5.3.5 測試套件 131
本章小結(jié) 132
本章習(xí)題 132
第6章 性能測試
6.1 性能測試概述 135
6.1.1 性能測試基礎(chǔ) 135
6.1.2 性能測試失敗案例 136
6.1.3 性能測試分類 137
6.1.4 性能測試指標(biāo) 140
6.2 搭建性能測試環(huán)境 144
6.2.1 搭建基礎(chǔ)環(huán)境 144
6.2.2 JMeter安裝方法 148
6.2.3 JMeter包含目錄 149
6.3 JMeter測試案例 152
6.3.1 新建測試計劃 152
6.3.2 添加線程組 153
6.3.3 添加HTTP請求 155
6.3.4 添加查看結(jié)果樹 157
6.3.5 測試執(zhí)行 157
6.4 JMeter的核心組件 159
6.4.1 取樣器 159
6.4.2 監(jiān)聽器 163
6.4.3 配置元件 169
6.4.4 斷言 180
6.4.5 前置處理器 188
6.4.6 后置處理器 190
6.4.7 邏輯控制器 199
6.4.8 定時器 207
6.5 實例:Badboy結(jié)合JMeter測試飛機購票系統(tǒng) 213
6.5.1 Badboy簡介 213
6.5.2 搭建測試環(huán)境 213
6.5.3 編寫測試腳本 217
本章小結(jié) 225
本章習(xí)題 225
第7章 自動化測試
7.1 自動化測試概述 227
7.1.1 什么是自動化測試 227
7.1.2 自動化測試的基本流程 228
7.1.3 自動化測試的實施策略 229
7.1.4 自動化測試的優(yōu)勢和劣勢 230
7.2 自動化測試常見技術(shù) 231
7.2.1 錄制回放技術(shù) 231
7.2.2 數(shù)據(jù)驅(qū)動測試 231
7.2.3 關(guān)鍵字驅(qū)動測試 232
7.2.4 行為驅(qū)動測試 232
7.2.5 接口測試技術(shù) 232
7.2.6 性能測試技術(shù) 232
7.3 自動化測試常見工具 233
7.4 QTP自動化工具 233
7.4.1 搭建自動化測試QTP環(huán)境 234
7.4.2 QTP工具的基本應(yīng)用 235
7.4.3 QTP常用的操作方法 236
7.4.4 QTP操作界面 238
7.4.5 QTP工作流程 239
7.4.6 Action知識 243
7.4.7 QTP參數(shù)化 246
7.4.8 QTP同步點 262
7.4.9 QTP檢查點 265
7.4.10 QTP多Action操作 271
7.4.11 不同的Action中傳遞參數(shù) 292
本章小結(jié) 302
本章習(xí)題 303
第8章 軟件評審
8.1 軟件評審基礎(chǔ)知識 305
8.1.1 軟件評審的概念 305
8.1.2 軟件評審的作用 306
8.1.3 軟件評審的特點 306
8.2 軟件評審活動 307
8.3 軟件評審技術(shù)和工具 308
8.3.1 常用技術(shù)和工具 308
8.3.2 SourceMonitor工具 308
8.4 軟件評審的組織 315
本章小結(jié) 316
本章習(xí)題 316
第9章 軟件質(zhì)量與質(zhì)量保證
9.1 相關(guān)概念 318
9.1.1 軟件質(zhì)量保證(SQA) 318
9.1.2 軟件質(zhì)量控制(SQC) 318
9.1.3 SQC與SQA的區(qū)別 318
9.2 軟件質(zhì)量模型和質(zhì)量度量 319
9.2.1 軟件質(zhì)量模型 319
9.2.2 軟件質(zhì)量的度量 320
9.3 軟件質(zhì)量管理與質(zhì)量保證 321
9.3.1 軟件質(zhì)量管理 321
9.3.2 軟件質(zhì)量保證的活動 322
9.3.3 軟件質(zhì)量保證體系的構(gòu)成 323
9.4 程序正確性軟件質(zhì)量 323
9.4.1 程序正確性的標(biāo)準(zhǔn) 323
9.4.2 軟件錯誤的分類 324
9.5 程序中隱藏錯誤數(shù)量估計 324
9.5.1 種子模型法 325
9.5.2 Hyman估算法 325
9.5.3 回歸分析 326
本章小結(jié) 326
本章習(xí)題 327
第10章 測試的組織和管理
10.1 人員和資源組織 328
10.1.1 軟件測試工作的特點 328
10.1.2 軟件測試人員組織 329
10.1.3 軟件測試資源組織 331
10.2 過程和進(jìn)度管理 331
10.2.1 軟件測試項目的過程 331
10.2.2 測試進(jìn)度管理 335
10.3 測試文檔、測試用例和缺陷管理 336
10.3.1 測試文檔管理 336
10.3.2 測試用例管理 337
10.3.3 缺陷管理 339
本章小結(jié) 340
本章習(xí)題 340
參考文獻(xiàn)