內容簡介
本書根據高等職業院校軟件技術專業教學標準,參考《Web應用軟件測試職業技能等級標準》及全國職業院校技能大賽”軟件測試”賽項規程,按照企業軟件測試的流程及軟件測試初→中→高崗位級別對應的典型任務將內容分為8個單元(共28)個任務,包括軟件測試基礎、白盒測試、黑盒測試、軟件測試過程、面向對象軟件測試、缺陷報告與測試管理、軟件測試自動化和軟件測試項目實戰——測試資產管理系統。本書適合作為高等職業院校信息技術類專業軟件測試課程的教材,也可作為軟件開發及測試的技術人員以及對軟件測試有興趣的學習者的參考書。
作者簡介
王敏,教授,畢業于華東師範大學計算機科學專業。曾在中船重工709研究所從事加固型計算機相關研發工作;在日本從事計算機軟件編程、設計、測試及項目管理工作;在中南民族大學、武昌理工學院從事教學、管理工作。擔任《軟件測試》《Java面向對象程序設計》、《HTML5技術》《數據庫應用技術》《軟件工程》等課程主講教師。主持完成省級教研課題4項,主持完成湖北省自然科學基金課題1項,主持完成對日外包軟件開發項目1項,主持省級重點教研課題1項,擔任省級精品資源共享課程《數據結構》課程負責人。撰寫科研論文論文40餘篇,其中中文核心10餘篇。主要研究方向:軟件測試技術。受聘湖北工業大學碩士研究生導師、柬埔寨國家技術培訓學院軟件技術方向骨幹教師、中國計算機學會職業教育發展委員會軟件技術工作組副組長、國家開放大學《軟件工程》核心教學團隊成員,現任湖北開放大學(湖北科技職業學院)軟件工程學院院長。
目錄
目 錄
單元一 軟件測試基礎 1
單元導學 1
學習目標 1
任務1-1 瞭解軟件測試的背景 1
任務引入 1
問題導引 2
2
知識準備 2
1 1 1 軟件 2
1 1 2 軟件工程 3
1 1 3 軟件缺陷 7
任務拓展 11
關於軟件缺陷的討論 11
複習任務 12
任務1-2 掌握軟件測試基礎知識 13
任務引入 13
問題導引 13
知識準備 13
1 2 1 軟件測試 13
1 2 2 軟件測試過程模型 15
1 2 3 軟件測試的原則 20
1 2 4 軟件測試的分類 22
任務拓展 26
關於軟件測試基礎知識應用的討論 26
複習任務 26
任務1-3 瞭解軟件質量 29
任務引入 29
問題導引 29
知識準備 29
1 3 1 軟件質量 29
1 3 2 軟件質量模型 30
任務拓展 33
關於軟件產品質量的討論 33
複習任務 33
任務1-4 瞭解軟件測試行業發展 34
任務引入 34
問題導引 34
知識準備 34
1 4 1 軟件測試發展的歷程 34
1 4 2 軟件測試現狀及前景 36
1 4 3 軟件測試人員的基本技能和素質 36
任務實操 37
軟件測試基礎之功能實現及簡單測試 37
複習任務 38
單元小結 38
單元練習 39
單元二 白盒測試 46
單元導學 46
學習目標 47
任務2-1掌握靜態測試方法 47
任務引入 47
問題導引 47
知識準備 47
2 1 1代碼檢查 47
2 1 2靜態結構分析 50
任務實操 50
編程實現CodeReview簡單功能 50
複習任務 52
任務2-2 採用邏輯覆蓋法進行測試用例設計 53
任務引入 53
問題導引 53
知識準備 53
2 2 1語句覆蓋 54
2 2 2判定覆蓋 55
2 2 3條件覆蓋 55
2 2 4條件判定覆蓋 56
2 2 5條件組合覆蓋 57
任務實操 58
使用邏輯覆蓋方法設計測試用例 58
複習任務 59
任務2-3採用基本路徑覆蓋法進行測試用例設計 60
任務引入 60
問題導引 60
知識準備 60
2 3 1程序控制流圖 60
2 3 2控制流圖的繪製方法 61
2 3 3控制流圖環路複雜度的計算 63
2 3 4 基本路徑測試用例的設計步驟 63
任務實操 64
使用基本路徑覆蓋方法設計測試用例 64
複習任務 65
單元小結 66
單元練習 66
單元三 黑盒測試 69
單元導學 69
學習目標 69
任務3-1 採用等價類劃分法進行測試用例設計 70
任務引入 70
問題導引 70
知識準備 70
3 1 1 等價類劃分的常見類型 70
3 1 2 等價類劃分法測試用例設計步驟 74
任務實操 78
測試用例設計之等價類劃分法 78
複習任務 79
任務3-2 採用邊界值分析法進行測試用例設計 81
任務引入 81
問題導引 81
知識準備 81
3 2 1 邊界值分析法 83
3 2 2 邊界值的分析方法 83
3 2 3 邊界的類型 86
3 2 4 隱含邊界 88
3 2 5 邊界值分析法測試用例設計步驟 90
任務實操 92
測試用例設計之邊界值分析法 92
複習任務 93
任務3-3 採用決策表法進行測試用例設計 94
任務引入 94
問題導引 94
知識準備 94
3 3 1 決策表的構成 95
3 3 2 決策表的簡化 96
3 3 3 決策表法測試用例設計步驟 98
3 3 4 決策表的擴展 98
3 3 5 決策表法的適用範圍 99
任務實操 102
測試用例設計之決策表法 102
複習任務 103
任務3-4 採用因果圖法進行測試用例設計 105
任務引入 105
問題導引 105
知識準備 105
3 4 1 因果圖的基本符號 105
3 4 2 因果圖的約束符號 106
3 4 3 因果圖法測試用例設計步驟 107
任務拓展 107
關於自動售貨機問題的測試用例設計的討論 107
複習任務 111
任務3-5 採用正交試驗法進行測試用例設計 112
任務引入 112
問題導引 112
知識準備 112
3 5 1 正交試驗法及其特性 112
3 5 2 正交試驗法測試用例設計步驟 114
任務實操 116
採用正交試驗法對WPS幻燈片打印功能進行測試 116
複習任務 118
任務3-6 採用場景法進行測試用例設計 119
任務引入 119
問題導引 119
知識準備 120
3 6 1 基本流和備選流 120
3 6 2 場景法設計測試用例的步驟 120
任務實操 122
採用功能圖法對ATM機取款流程進行測試用例設計 122
複習任務 123
單元小結 124
單元練習 124
單元四 軟件測試過程 129
單元導學 129
學習目標 129
任務4-1掌握單元測試方法 130
任務引入 130
問題導引 130
知識準備 130
4 1 1單元測試的重要性及原則 130
4 1 2單元測試的主要任務 131
4 1 3單元測試的環境 134
4 1 4單元測試技術與測試數據 134
4 1 5單元測試的人員 136
任務實操 136
以界面為單元進行單元測試 136
複習任務 137
任務4-2掌握集成測試方法 138
任務引入 138
問題導引 139
知識準備 139
4 2 1集成測試的主要任務 139
4 2 2集成測試遵循的原則 140
4 2 3集成測試的環境 140
4 2 4集成測試實施方案 140
4 2 5集成測試技術與測試數據 142
4 2 6集成測試的人員 147
任務實操 147
以界面為單元進行集成測試 147
複習任務 148
任務4-3掌握系統測試方法 149
任務引入 149
問題導引 149
知識準備 149
4 3 1系統測試準備 149
4 3 2系統測試環境 150
4 3 3系統測試技術與測試數據 152
4 3 4系統測試人員 157
任務實操 157
對系統的業務性能進行測試 157
複習任務 158
任務4-4 瞭解驗收測試方法 159
任務引入 159
問題導引 159
知識準備 159
4 4 1驗收測試的主要任務 159
4 4 2 α、β測試 161
4 4 3驗收測試技術和數據 164
4 4 4驗收測試人員 166
任務實操 166
對系統進行驗收測試 166
複習任務 167
任務4-5掌握回歸測試的方法 168
任務引入 168
問題導引 168
知識準備 168
4 5 1回歸測試技術和方法 168
4 5 2回歸測試範圍 169
4 5 3回歸測試人員 169
任務實操 170
對系統進行回歸測試 170
複習任務 170
單元小結 171
單元練習 171
單元五 面向對象軟件測試 174
單元導學 174
學習目標 174
任務3-1 瞭解面向對象軟件測試的層次 174
任務引入 174
問題導引 175
知識準備 175
3 1 1 面向對象軟件的特點 175
3 1 2 面向對象軟件測試的階段 176
任務拓展 180
關於面向對象軟件測試的討論 180
複習任務 182
任務5-2 掌握面向對象軟件測試的策略 182
任務引入 182
問題導引 183
知識準備 183
3 1 1 面向對象軟件的測試策略 183
3 1 2 面向對象軟件的測試用例設計 185
任務實操 187
對Money和MoneyBag類進行測試 187
複習任務 187
單元小結 188
單元練習 188
單元六 缺陷報告與測試管理 189
單元導學 189
學習目標 189
任務6-1 學會缺陷的報告方法 189
任務引入 189
問題導引 190
知識準備 190
6 1 1 軟件缺陷的種類和屬性 190
6 1 2 軟件缺陷的生命週期 196
6 1 3 分離和再現軟件缺陷 198
6 1 4 報告軟件缺陷 199
任務實操 203
編寫資產管理系統”修改資產類別”模塊的缺陷報告 203
複習任務 204
任務6-2 掌握軟件測試項目管理的方法 207
任務引入 207
問題導引 207
知識準備 207
6 2 1 軟件測試管理概述 207
6 2 2 軟件測試文檔 210
6 2 3 測試組織與人員管理 216
6 2 4 軟件測試過程控制 218
任務拓展 223
複習任務 224
單元小結 225
單元練習 225
1
單元七 軟件測試自動化 228
單元導學 228
學習目標 228
任務7-1 瞭解軟件測試自動化的基本知識 228
任務引入 228
問題引導 229
知識準備 229
7 1 1 軟件測試自動化概述 229
7 1 2 自動化測試的原理和方法 230
7 1 3 自動化測試的引入原則 232
7 1 4 自動化測試的實施 232
任務拓展 234
複習任務 234
任務7-2 掌握單元測試工具Junit的使用 235
任務引入 235
問題引導 235
知識準備 235
7 2 1 Junit簡介 235
7 2 2 Junit的安裝與使用 237
7 2 3 Junit測試用例編寫與執行 240
任務實操 241
採用Junit對Calculator類進行測試 241
複習任務 242
任務7-3 掌握功能測試工具 Seleni