●1 白盒測試基礎知識 1
1.1 白盒測試簡介 2
1.1.1 白盒測試的定義 2
1.1.2 與黑盒測試的區別 2
1.2 白盒測試的分類 2
1.2.測試 3
1.2.2 集成測試 4
測試 5
2.1 已測試方法簡介 6
2.1.1 代碼走查法 6
2.1.2 插樁法 6
2.1.3 邏輯覆蓋法 7
2.2 測試方法的弊端 11
2.3 以“二八定律”為目測試指導思想 11
2.4 基於“二八定律測試指導思想的最佳實踐 12
2.4.1 測試步驟 12
2.4.測試案例簡介 12
2.4.3 測試用例 13
測試框架JUnit 16
3.1 JUnit安裝 17
3.2 JUnit關鍵技術講解 21
3.2.1 注解的使用 21
3.2.2 參數化測試 23
3.2.3 超時測試 25
3.2.4 異常測試 26
3.3 JUnit測試案例 26
4 集成測試 30
4.1 集成測試基礎及策略 31
4.1.1 集成測試簡介 31
4.1.2 常用集成測試策略 32
4.1.3 以“二八定律”為目標的集成測試指導思想 37
4.1.4 集成測試過程 38
4.2 以“二八定律”為目標的集成測試案例 39
4.2.1 集成測試之靜態測試 39
4.2.2 集成測試之動態測試 41
4.2.3 指導思想與其他策略對比 44
4.2.4 集成測試之Mock的應用 45
5 使用Mock實現集成測試 46
5.1 Mock簡介 47
5.1.1 什麼是Mock 47
5.1.2 Mock與Stub 48
5.2 Mock對像與真實對像 49
5.3 Mock的適用範圍 52
5.4 Mockito簡介 52
5.4.1 為什麼選擇Mockito 52
5.4.2 安裝Mockito依賴jar包 53
5.4.3 使用Mockito創建Mock對像 53
5.4.4 驗證行為 54
5.4.5 模擬返回結果 55
5.4.6 模擬異常 55
5.4.7 監控真實對像 56
5.5 Mock實例 56
6 黑盒測試的概述 58
6.1 黑盒測試 59
6.2 功能測試 59
6.2.1 功能測試方法簡介 59
6.2.2 等價類劃分法 59
6.2.3 邊界值分析法 61
6.2.4 其他功能測試方法簡介 62
6.3 功能測試指導思想 62
6.3.1 過往功能測試指導思想的弊端 62
6.3.2 以“二八定律”為目標的功能測試指導思想 63
6.3.3 根據“二八定律”的指導思想設計用例的步驟 64
6.4 基於“二八定律”的功能測試指導思想的最佳實踐 65
6.4.1 案例簡介 65
6.4.2 畫流程圖 65
6.4.3 劃分模塊,進行等價類劃分,形成初始等價類表 66
6.4.4 邊界值分析,補充完善等價類表 67
6.4.5 由等價類表得到改良流程圖 67
6.4.6 代入數據,形成用例 69
7 自動化功能測試 72
7.1 功能測試與自動化 73
7.1.1 自動化功能測試簡介 73
7.1.2 手工測試的優劣 74
7.1.3 自動化功能測試類型 74
7.1.4 自動化功能測試流程 75
7.1.5 自動化測試原理 75
7.2 自動化測試工具QTP 76
7.2.1 QTP技術簡介 76
7.2.2 自動化工具對比 76
7.2.3 測試方向 78
7.2.4 QTP的安裝配置 78
7.2.5 QTP的錄制和回放 81
7.2.6 增強腳本功能 84
7.2.7 QTP數據化操作 91
7.2.8 QTP描述性編程 95
7.2.9 QTP案例實測 97
7.3 Selenium簡介 108
7.3.1 Selenium的功能 108
7.3.2 Selenium的特色 108
7.3.3 Selenium的組件 108
8 性能測試基礎 109
8.1 什麼是性能測試 110
8.2 性能測試的分類 110
8.3 性能測試的應用場景 111
8.4 性能測試的基本概念 111
8.5 性能測試工具的發展與開源性能測試的優勢 113
9 JMeter基礎 114
9.1 JMeter簡介 115
9.1.1 JMeter的主要特點 115
9.1.2 JMeter與商業測試工具(LoadRunner)對比 115
9.2 JMeter的安裝 116
9.3 JMeter件 117
10 JMeter實戰 119
10.1 Web性能測試 120
10.1.1 創建測試計劃 120
10.1.2 測試結果分析 124
10.2 Socket性能測試 126
10.2.1 創建測試計劃 126
10.2.2 測試結果分析 129
11 Web頁面測試 130
11.1 用戶界面測試 131
11.1.1 用戶界面簡介 131
11.1.2 用戶界面測試簡介 131
11.1.3 用戶界面測試的目標 131
11.2 Web頁面測試 131
11.2.1 Web頁面測試簡介 131
11.2.2 瀏覽器與分辨率兼容性簡介 131
11.2.3 Web頁面兼容性測試目標 132
11.2.4 Web頁面測試準則 132
11.3 Web頁面自動化測試工具 136
11.3.1 Selenium簡介 136
11.3.2 環境配置 136
11.3.3 自動化頁面兼容性測試 136
11.3.4 自動化頁面分辨率測試 139
12 軟件測試管理基礎 141
12.1 軟件測試管理簡介 142
12.1.1 軟件測試管理的概念 142
12.1.2 測試管理的內容 142
12.1.3 測試管理的實施 143
12.2 軟件測試需求管理 144
12.2.1 測試需求的獲取與分析 144
12.2.2 測試需求狀態管理 145
12.2.3 測試需求變更管理 145
12.2.4 測試需求跟蹤管理 146
12.2.5 測試需求文檔版本管理 146
12.3 軟件測試文檔管理 146
12.3.1 測試文檔概述 146
12.3.2 測試文檔的重要性 148
12.3.3 測試文檔的管理 149
12.3.4 測試文檔模板簡介 150
12.4 軟件測試缺陷管理 156
12.4.1 軟件測試缺陷概述 156
12.4.2 軟件測試缺陷的狀態 157
12.4.3 軟件測試缺陷的嚴重性 158
12.4.4 軟件測試缺陷的優先級 158
12.4.5 軟件測試缺陷的管理過程及方法 159
13 測試管理工具 161
13.1 測試管理工具簡介 162
13.2 常用測試管理工具 162
13.2.1 TestManager 162
13.2.2 ClearQuest 163
13.2.3 Application Lifecycle Management(ALM) 163
13.2.4 TestCenter 164
13.2.5 TestLink 164
13.2.6 Mantis 164
13.2.7 Bugzilla 165
13.3 TestLink與Mantis的優越性 165
14 TestLink與Mantis案例實戰 166
14.1 TestLink的安裝與配置 167
14.2 TestLink功能分析 169
14.3 Mantis的安裝與配置 171
14.4 TestLink與Mantis集成 171
14.5 TestLink與Mantis實戰 173
14.5.1 TestLink的使用 173
14.5.2 Mantis的使用 195
14.5.3 TestLink與Mantis集成使用 203
內容簡介
本書主要介紹軟件測試技術,涵蓋白盒測試、黑盒測試、性能測試和軟件測試管理四部分內容測試、集成測試和功能測試中,基於已有的軟件測試理論、方法,提出用“二八”定律思想來指導軟件測試實踐的探索,旨在幫助軟件測試人員以較小成本測出更多問題,提升軟件質量。本書以一個實際項目的測試案例貫穿始終,方便讀者直觀地理解軟件測試相關理論,支持讀者快速上手。