軟件測試教程(第4版)
賀平
- 出版商: 電子工業
- 出版日期: 2024-07-01
- 定價: $419
- 售價: 8.5 折 $356
- 語言: 簡體中文
- 頁數: 360
- ISBN: 7121474255
- ISBN-13: 9787121474255
下單後立即進貨 (約4週~6週)
相關主題
商品描述
本書全面闡述了軟件測試的基本理論和業界主流的技術方法,並從軟件生命周期的最新視角展開,分析軟件測試的知識、技術及應用的策略、過程及方法。全書共10 章:軟件測試概述、軟件生命周期的測試、軟件靜態測試技術、軟件動態測試技術、軟件自動化測試、軟件項目的組件測試、軟件系統功能測試、軟件系統性能測試、軟件系統安全性測試、軟件測試管理,基本涵蓋了目前軟件測試的知識體系、技術體系和應用體系。本書使讀者能系統地、較快地掌握軟件測試的系統知識,獲得解決實際測試問題的思路和基本的工程實踐方法。本書是中國大學資源共享課“軟件測試”的配套教材、高等學校國家精品課程教材。本書配有相關的視頻資源,讀者可以登錄華信教育資源網(www.hxedu.com.cn),搜索本書後按照提示信息瀏覽視頻資源。本書可作為高等院校、高等職業院校的軟件工程、軟件技術、軟件測試及相關信息技術類專業教材,也可作為國際軟件測試工程師認證(ISTQB)的參考資料。
目錄大綱
目 錄
第1 章 軟件測試概述 ··························.1
1.1 軟件測試的產生與發展 ···········.1
1.1.1 軟件可靠性問題 ················.1
1.1.2 軟件缺陷與故障 ················.2
1.1.3 軟件測試的產生背景與發展過程 ·························.4
1.1.4 軟件測試的發展趨勢 ··········.6
1.2 軟件測試基礎知識與理論 ·······.7
1.2.1 軟件測試的目的與原則 ·······.7
1.2.2 軟件測試的基本原理與特性準則 ·························.8
1.2.3 軟件測試的基本策略 ··········.9
1.3 軟件開發流程與軟件測試 ······.10
1.3.1 軟件開發流程 ··················.10
1.3.2 軟件開發與軟件測試 ·········.16
1.3.3 軟件測試模型分析 ············.17
1.4 軟件質量及其保證 ·················.20
1.4.1 軟件質量管理體系 ············.20
1.4.2 軟件測試成熟度 ···············.23
本章小結 ·······································.27
習題 ··············································.27
第2 章 軟件生命周期的測試 ··············.31
2.1 軟件生命周期及測試策略 ······.31
2.1.1 軟件生命周期 ··················.31
2.1.2 軟件生命周期中的測試策略 ······························.32
2.1.3 軟件測試通用流程 ············.33
2.2 軟件測試技術分析 ·················.34
2.2.1 基於動態的測試分析與基於靜態的測試分析 ·········.35
2.2.2 基於規格說明的測試技術 ···.35
2.2.3 基於軟件結構的測試技術 ··.36
2.2.4 基於經驗的測試技術 ········.37
2.2.5 手工測試與自動化測試 ·····.39
2.2.6 基於風險的測試 ··············.40
2.2.7 軟件測試的分類 ··············.41
2.3 組件測試 ······························.43
2.3.1 組件測試的類別及模式 ·····.43
2.3.2 組件測試的任務 ··············.44
2.3.3 組件測試的過程 ··············.45
2.3.4 組件測試管理 ·················.46
2.4 集成測試 ······························.46
2.4.1 集成測試的概念 ··············.46
2.4.2 集成測試的策略 ··············.46
2.5 系統測試 ······························.48
2.5.1 系統測試的概念、對象與環境和目標 ····················.48
2.5.2 功能性測試 ····················.49
2.5.3 非功能性測試 ·················.50
2.6 確認測試 ······························.54
2.6.1 確認測試的準則 ··············.54
2.6.2 程序修改後的確認測試 ·····.54
2.6.3 配置與審查 ····················.55
2.7 驗收測試 ······························.55
2.7.1 驗收測試的含義 ··············.55
2.7.2 驗收測試的任務及內容 ·····.55
2.7.3 軟件文檔驗收測試 ···········.56
2.8 軟件新版本的測試 ················.57
2.8.1 軟件維護測試 ·················.57
2.8.2 軟件版本開發的測試 ········.57
2.8.3 軟件增量開發的測試 ········.57
本章小結 ······································.59
習題 ·············································.60
第3 章 軟件靜態測試技術 ·················.68
3.1 軟件靜態測試 ························.68
3.1.1 靜態測試技術概述 ············.68
3.1.2 靜態測試技術 ··················.69
3.2 程序數據流分析方法 ·············.72
3.2.1 數據流測試 ·····················.72
3.2.2 數據流測試的應用舉例 ······.73
3.3 程序控制流分析方法 ·············.74
3.3.1 程序的控制流圖 ···············.74
3.3.2 將程序流程圖轉換為控制流圖 ······························.75
3.3.3 控制流圖分析的測試應用 ···.76
3.4 軟件的復雜性度量 ·················.77
3.4.1 靜態測試分析工具及測試對象與規範、標準的一致性 ···.77
3.4.2 軟件復雜度的度量 ············.78
3.4.3 Logiscope 靜態分析測試應用 ······························.86
3.5 軟件評審 ·······························.95
3.5.1 軟件評審的概念 ···············.95
3.5.2 評審的組織 ·····················.96
3.5.3 評審過程 ························.96
3.5.4 評審類型 ························.97
本章小結 ·······································.99
習題 ··············································.99
第4 章 軟件動態測試技術 ···············.103
4.1 軟件動態測試技術概述 ········.103
4.1.1 動態測試 ······················.103
4.1.2 動態測試(黑盒技術)的測試模型 ······················.106
4.2 等價類劃分法與邊界值分析法 ································.106
4.2.1 等價類劃分法 ················.106
4.2.2 邊界值分析法 ················.110
4.2.3 運用等價類劃分法與邊界值分析法設計測試用例 ····.112
4.3 因果圖與決策表法 ···············.115
4.3.1 因果圖法 ······················.115
4.3.2 決策表法 ······················.117
4.3.3 運用因果圖-決策表法設計測試用例 ······················.119
4.4 狀態轉換法 ··························.124
4.4.1 狀態轉換法的原理 ··········.124
4.4.2 運用狀態轉換法設計測試用例 ····························.125
4.5 全配對法 ·····························.127
4.5.1 全配對法測試原理 ··········.128
4.5.2 運用全配對法設計測試用例 ····························.131
4.6 覆蓋測試法 ··························.135
4.6.1 邏輯覆蓋 ······················.135
4.6.2 路徑覆蓋 ······················.141
4.6.3 循環測試 ······················.144
本章小結 ·····································.146
習題 ············································.147
第5 章 軟件自動化測試 ····················.159
5.1 軟件自動化測試的概念及特點 ·································.159
5.1.1 自動化測試概述 ·············.159
5.1.2 自動化測試的特點 ··········.161
5.2 軟件自動化測試生命周期方法學及其應用 ···················.162
5.2.1 自動化測試的決策 ··········.162
5.2.2 測試工具的獲取 ·············.163
5.2.3 自動化測試的引入 ··········.163
5.2.4 確定測試計劃、進行測試設計 ····························.164
5.2.5 測試執行與管理 ·············.164
5.2.6 測試評審與評估 ·············.166
5.3 自動化測試用例與腳本 ········.166
5.3.1 自動化測試用例的生成要求 ····························.166
5.3.2 自動化測試腳本 ·············.167
5.4 自動化測試工具 ···················.169
5.4.1 自動化測試的專項工具 ····.169
5.4.2 自動化測試套件 ·············.174
本章小結 ·····································.180
習題 ············································.180
第6 章 軟件項目的組件測試 ············.183
6.1 軟件項目的組件測試及解決方案 ·····························.183
6.1.1 組件測試的範圍及內容 ····.183
6.1.2 軟件項目的組件測試解決方案 ····························.184
6.2 軟件GUI 的測試 ·················.186
6.2.1 頁面元素測試 ················.186
6.2.2 對窗體操作的測試 ··········.187
6.2.3 對下拉式菜單與鼠標操作的測試 ·························.188
6.2.4 對數據項操作的測試 ·······.188
6.3 面向對象軟件類的測試 ········.188
6.3.1 類、對象、消息及接口 ····.188
6.3.2 類的測試設計 ················.191
6.4 Logiscope 組件測試應用 ······.198
6.4.1 Logiscope 概況 ···············.198
6.4.2 Logiscope 的功能 ············.199
6.4.3 Logiscope 的安裝與配置 ···.200
6.4.4 TestChecker 測試應用 ······.201
6.5 運用JUnit 進行組件測試 ·····.208
6.5.1 JUnit 概述 ·····················.208
6.5.2 運用JUnit 進行組件測試的操作方法 ······················.211
本章小結 ·····································.218
習題 ············································.218
第7 章 軟件系統功能測試 ················.221
7.1 軟件系統功能測試概述 ········.221
7.1.1 軟件系統功能測試的內容··.221
7.1.2 軟件系統功能測試的基本要素 ····························.223
7.2 軟件系統功能測試工具及其應用 ·····························.223
7.2.1 RFT 概述 ······················.223
7.2.2 RFT 的基本運用方法 ·······.229
7.2.3 RFT 的測試應用 ·············.240
本章小結 ·····································.245
習題 ············································.245
第8 章 軟件系統性能測試 ················.247
8.1 軟件系統性能測試概述 ········.247
8.1.1 軟件系統性能測試的概念 ··.247
8.1.2 軟件系統性能測試規劃與設計 ····························.251
8.1.3 軟件系統性能測試管理 ····.254
8.2 Web 性能測試 ······················.256
8.2.1 Web 性能測試模型 ··········.256
8.2.2 Web 性能測試用例設計 ····.257
8.2.3 Web 性能測試過程管理 ····.262
8.3 軟件系統性能測試的工具及其應用 ·····························.263
8.3.1 RPT 概述 ······················.263
8.3.2 RPT 的基本運用方法 ·······.265
8.3.3 RPT 的測試應用 ·············.269
本章小結 ·····································.276
習題 ············································.276
第9 章 軟件系統安全性測試 ·············.279
9.1 軟件系統安全性測試概述 ·····.279
9.1.1 軟件系統安全性概述 ·······.280
9.1.2 軟件系統安全性測試策略 ··.284
9.1.3 軟件系統安全性測試方法 ··.285
9.2 Web 應用系統安全性測試 ·····.288
9.2.1 Web 應用系統安全性測試的背景 ···················.288
9.2.2 Web 應用系統安全性測試應用 ····························.288
9.3 軟件系統安全性測試的工具及其應用 ······················.292
9.3.1 AppScan ·······················.292
9.3.2 AppScan 的功能特性 ········.294
9.3.3 AppScan 的基本使用 ········.301
9.3.4 AppScan 安全性測試應用 ··.309
本章小結 ·····································.311
習題 ············································.312
第10 章 軟件測試管理 ·····················.313
10.1 軟件測試管理的概念 ·········.313
10.1.1 測試管理的基本要素 ·····.313
10.1.2 測試組織管理 ··············.315
10.2 測試計劃管理與測試過程管理 ··································.318
10.2.1 測試計劃管理 ··············.318
10.2.2 測試過程管理 ··············.321
10.3 測試事件管理 ····················.329
10.3.1 缺陷管理 ····················.329
10.3.2 測試用例管理 ···············.331
10.4 軟件配置管理 ·····················.334
10.4.1 軟件配置管理的內涵 ······.335
10.4.2 配置管理策略與方法 ······.336
10.4.3 配置管理的應用 ············.339
10.5 測試管理工具及其應用 ·······.340
10.5.1 TestDirector 測試管理工具 ···························.340
10.5.2 Rational TestManager測試管理工具 ···············.346
本章小結 ·····································.348
習題 ············································.348
參考文獻 ············································.351