第1 章 Web 測試專題技術分享 ............. 1
1.1 Web 測試的特點 ............................ 1
1.2 Web 測試基礎點 ............................ 2
1.2.1 獲取軟件版本號 ........................... 2
1.2.2 修改瀏覽器的代理設置 ................ 4
1.2.3 修改hosts 配置文件 ..................... 6
1.2.4 測試網上付費購物 ....................... 7
1.2.5 截圖軟件FS Capture 的使用 ........ 8
1.2.6 截圖軟件Jing 的使用 ................. 10
1.3 用戶界麵測試 .............................. 12
1.3.1 文字或圖片重疊 ......................... 12
1.3.2 文字或圖片剪裁 ......................... 13
1.3.3 文字或圖片沒對齊 ..................... 14
1.3.4 重復菜單項或鏈接 ..................... 15
1.3.5 提示信息錯誤 ............................. 15
1.3.6 界麵測試其他問題 ..................... 16
1.4 功能測試 ..................................... 18
1.4.1 Tooltip 不顯示 ............................ 18
1.4.2 JS 錯誤問題 ................................ 19
1.4.3 頁麵鏈接錯誤 ............................. 20
1.4.4 頁麵訪問資源不可用 .................. 21
1.4.5 齣現“404 頁麵錯誤” ............... 22
1.4.6 按鈕不工作 ................................. 23
1.4.7 功能未實現 ................................. 24
1.4.8 錯誤信息提示不閤理 .................. 25
1.4.9 數據庫訪問錯誤 ......................... 26
1.4.10 文檔無法下載 ........................... 27
1.5 錶單測試 ..................................... 28
1.5.1 文本框測試常見驗證點 .............. 28
1.5.2 特殊輸入域測試常見驗證點 ...... 29
1.5.3 單選按鈕測試常見驗證點 .......... 31
1.5.4 復選框測試常見驗證點 .............. 32
1.5.5 大塊文字區域測試常見驗證點 ... 32
1.5.6 下拉列錶框測試常見驗證點 ...... 33
1.5.7 排序測試常見驗證點 ................. 33
1.5.8 分頁測試常見驗證點 ................. 33
1.5.9 搜索框填充域測試常見驗證點 ............................................ 34
1.5.10 用戶登錄測試常見驗證點 ........ 35
1.5.11 特殊字符處理常見驗證點 ........ 35
1.5.12 轉義字符處理常見驗證點 ........ 37
1.5.13 多次快速提交問題 ................... 37
1.5.14 共用頁麵Session 問題 ............. 37
1.5.15 頁麵刷新問題 ........................... 38
1.5.16 瀏覽器前進/後退按鈕問題 ....... 38
第2 章 Client 測試專題技術分享 ....... 39
2.1 Client 測試的特點 ....................... 39
2.2 如何進行Client 測試 .................. 40
2.2.1 安裝測試 .................................... 40
2.2.2 卸載測試 .................................... 42
2.2.3 UI 測試 ....................................... 43
2.2.4 功能測試 .................................... 45
2.2.5 字符輸入測試 ............................. 47
2.2.6 Tooltip 測試 ................................ 48
2.2.7 鏈接測試 .................................... 49
2.2.8 操作按鈕測試 ............................. 50
2.2.9 菜單測試 .................................... 51
2.2.10 音頻測試 .................................. 51
2.2.11 視頻測試 .................................. 53
2.2.12 程序運行權限測試 ................... 54
2.3 如何獲取測試需要的Trace ......... 55
第3 章 Mobile 測試專題技術分享 ...... 57
3.1 Mobile 特點 ................................. 57
3.2 Mobile 測試基礎 ......................... 58
3.2.1 手機測試常見類型 ..................... 58
3.2.2 手機測試與傳統測試的區彆 ...... 59
3.2.3 監控手機流量 ............................. 60
3.2.4 獲取手機的Root 權限 ................ 60
3.3 實現手機與計算機的聯係 .......... 61
3.3.1 “豌豆莢”的基本操作 .............. 62
3.3.2 “360 手機助手”的基本操作 .... 62
3.3.3 “騰訊手機管傢”的基本操作 ... 63
3.3.4 實現iPhone/iPad/iPad Mini 與計算機的聯係 ............................. 63
3.3.5 備份手機中的數據 ..................... 64
3.3.6 截取手機屏幕內容 ..................... 65
3.3.7 記錄手機的Error Log ................. 66
3.3.8 手機數據信息 ............................. 68
3.4 手機設備的自身測試 .................. 68
3.5 手機應用軟件測試 ...................... 72
3.6 手機Web 應用測試 ..................... 73
3.7 手機測試問題集錦 ...................... 73
第4 章 國際化、本地化軟件測試專題技術分享 ........................ 77
4.1 軟件國際化 ................................. 77
4.1.1 國際化概述 ................................. 78
4.1.2 軟件國際化誤區 ......................... 78
4.2 軟件本地化 .................................. 80
4.2.1 軟件本地化概述 ......................... 80
4.2.2 軟件本地化誤區 ......................... 81
4.3 國際化軟件測試 .......................... 82
4.3.1 在本地化機器上安裝使用程序 .. 82
4.3.2 正確的字符集編碼 ..................... 83
4.3.3 僞本地化測試發現文本擴展問題 ............................................ 85
4.3.4 測試區域文化和傳統特徵 .......... 87
4.3.5 保證文本與代碼分離 ................. 87
4.4 本地化軟件測試 .......................... 89
4.4.1 翻譯問題 .................................... 89
4.4.2 數據格式問題 ............................. 90
4.4.3 快捷鍵問題 ................................ 91
4.4.4 本地化後的排序問題 ................. 92
4.4.5 常用本地化測試技巧 ................. 93
第5 章 跨平颱跨瀏覽器專題技術分享 ............................... 95
5.1 跨平颱測試特點 .......................... 96
5.2 軟件平颱的分類 .......................... 96
5.2.1 Windows 平颱 ............................. 97
5.2.2 Mac OS X 平颱 ........................... 97
5.2.3 Linux 平颱 .................................. 98
5.2.4 Solaris 平颱 ................................ 98
5.2.5 HP-UX 平颱 ............................... 98
5.2.6 IBM-AIX 平颱 ............................ 98
5.3 跨平颱測試需要具備的知識 ....... 99
5.3.1 Windows 平颱 ............................. 99
5.3.2 Mac OS X 平颱 ......................... 103
5.3.3 UNIX 平颱 ................................ 107
5.4 跨平颱測試技術分享 ................. 111
5.4.1 安裝應用程序 ........................... 112
5.4.2 應用程序運行 ........................... 114
5.4.3 程序運行界麵測試 ................... 115
5.4.4 程序功能測試 ........................... 116
5.5 瀏覽器的分類 ........................... 118
5.5.1 IE .............................................. 118
5.5.2 Firefox ...................................... 119
5.5.3 Chrome ..................................... 119
5.5.4 Safari ........................................ 120
5.6 跨瀏覽器測試技術分享 ............ 120
第6 章 Web 安全測試專題技術分享 ............................. 123
6.1 Web 安全測試 ........................... 123
6.1.1 Web 前端工具Firebug 的使用 .. 124
6.1.2 Web 前端工具Fiddler 的使用 ... 125
6.1.3 2010 年Web 應用十大安全攻擊 .......................................... 127
6.1.4 2010 年與2007 年Web 應用十大安全攻擊對比 .................... 129
6.2 未驗證的重定嚮和轉發 ............... 129
6.2.1 攻擊說明 .................................. 129
6.2.2 攻擊舉例 .................................. 130
6.2.3 開發人員防範方法 ................... 131
6.3 傳輸層保護不足 ........................ 131
6.3.1 攻擊說明 .................................. 131
6.3.2 攻擊舉例 .................................. 131
6.3.3 開發人員防範方法 ................... 131
6.4 URL 訪問控製不當 ................... 132
6.4.1 攻擊說明 .................................. 132
6.4.2 攻擊舉例 .................................. 132
6.4.3 開發人員的防範方法 ............... 132
6.5 不安全的加密存儲 .................... 133
6.5.1 攻擊說明 .................................. 133
6.5.2 攻擊舉例 .................................. 133
6.5.3 開發人員防範方法 ................... 133
6.6 安全配置錯誤 ............................ 134
6.6.1 攻擊說明 .................................. 134
6.6.2 攻擊舉例 .................................. 134
6.6.3 開發人員防範方法 ................... 134
6.7 CSRF ......................................... 135
6.7.1 攻擊說明 .................................. 135
6.7.2 攻擊舉例 .................................. 135
6.7.3 開發人員防範方法 ................... 136
6.8 不安全的直接對象引用 ............. 136
6.8.1 攻擊說明 .................................. 136
6.8.2 攻擊舉例 .................................. 137
6.8.3 開發人員防範方法 ................... 137
6.9 失效的身份認證和會話管理 ..... 137
6.9.1 攻擊說明 .................................. 137
6.9.2 攻擊舉例 .................................. 137
6.9.3 開發人員防範方法 ................... 138
6.10 跨站腳本 ................................. 138
6.10.1 攻擊說明 ................................. 138
6.10.2 攻擊舉例 ................................. 139
6.10.3 開發人員防範方法 .................. 140
6.11 SQL 注入 ................................. 141
6.11.1 攻擊說明 ................................. 141
6.11.2 攻擊舉例 ................................. 141
6.11.3 開發人員防範方法 .................. 143
6.12 OWASP.................................... 143
6.12.1 OWASP 定義 ........................... 143
6.12.2 OWASP 上最新的Web 安全攻擊與防範技術 ...................... 143
6.12.3 WiKi 上最新的Web 安全攻擊與防範技術 ...................... 145
第7 章 敏捷項目測試專題技術分享 . 146
7.1 敏捷軟件開發簡介 .................... 147
7.1.1 敏捷開發的流程 ....................... 147
7.1.2 敏捷開發的質量管理 ................ 148
7.1.3 敏捷開發中的關鍵概念 ............ 149
7.2 敏捷測試的定義 ....................... 152
7.3 敏捷測試的實質 ....................... 152
7.4 敏捷測試與普通測試的區彆 .... 153
7.5 敏捷項目測試實例介紹 ............ 154
7.5.1 實例項目介紹 ........................... 154
7.5.2 用戶故事設計和發布計劃階段 .......................................... 156
7.5.3 Sprint 階段 ............................... 158
7.5.4 Sprint 結束和下一個Sprint開始 .......................................... 162
第8 章 軟件自動化測試專題技術分享 ............................. 165
8.1 引入自動化測試 ........................ 165
8.2 什麼是自動化測試 .................... 171
8.2.1 自動化測試是怎樣工作的 ........ 172
8.2.2 自動化測試有哪些類彆 ............ 174
8.2.3 設計一個常見的自動化測試框架 ................................... 175
8.3 持續集成自動化測試 ................ 177
8.4 自動化測試工具——JMeter ...... 178
8.4.1 JMeter 是什麼 ........................... 178
8.4.2 JMeter 的安裝和運行 ............... 178
8.4.3 JMeter 自動化腳本設計策略 .... 181
8.4.4 抓取一個簡單的請求 ............... 182
8.4.5 設置配置文件 ........................... 186
8.5 設計一個簡單的腳本 ................ 196
8.5.1 添加學生——HTTP Request ..... 196
8.5.2 查看運行結果——View Results Tree ...................... 200
8.5.3 訪問數據庫——JDBC Request ........................... 202
8.5.4 驗證測試結果——Response Assertion .................... 204
8.5.5 清理數據 .................................. 206
第9 章 壓力與性能測試專題技術分享 ............................. 209
9.1 什麼是壓力、性能測試 ............ 209
9.2 壓力測試和性能測試用例設計 ........................................... 211
9.3 壓力測試和性能測試——JMeter ........................................ 214
9.3.1 單綫程添加多個學生 ................ 215
9.3.2 多綫程添加多個學生 ................ 221
9.4 生成測試報告 ........................... 225
9.4.1 生成測試報告的方法 ................ 225
9.4.2 分析測試報告 ........................... 226
第10 章 自己動手完成軟件測試實踐 ................................. 232
10.1 中心在綫網站測試實踐 .......... 232
10.2 國內知名網站或應用測試實踐 ......................................... 234
10.3 如何設計測試案例 .................. 235
10.3.1 看清項目測試範圍(Test Scope) .......................... 236
10.3.2 編寫測試案例 ......................... 237
10.4 準確匯報BUG 的技巧 ............ 243
10.4.1 準確匯報BUG 的幾條基本準則 ........................................ 243
10.4.2 描述BUG 中需要注意的事項 ........................................ 244
10.4.3 在匯報英文BUG 時用專業英文描述 ................................. 244
10.4.4 與外國人進行項目交流時的常用英語 ................................. 246
10.5 尋找軟件産品缺陷獲奬作品欣賞 ........................................ 248
10.5.1 全國大學生尋找産品缺陷(Find BUG)技能大賽說明 .... 248
10.5.2 匯報産品缺陷模闆 ................. 250
10.5.3 參賽選手提交的作品內容 ...... 250
10.5.4 大賽組委會審閱評價 .............. 260
第11 章 網頁編程語言HTML .......... 261
11.1 HTML 編輯工具 ...................... 262
11.2 讀者如何參與實踐 .................. 263
11.3 HTML 語法教學 ...................... 265
11.3.1 網頁架構標記 ......................... 265
11.3.2 排版標記 ................................ 268
11.3.3 字體標記 ................................ 271
11.3.4 清單標記 ................................ 274
11.3.5 錶格標記 ................................ 277
11.3.6 圖形標記 ................................ 281
11.3.7 錶單標記 ................................ 284
11.3.8 鏈接標記 ................................ 290
11.3.9 框架標記 ................................ 291
11.3.10 多媒體標記 ........................... 294
11.3.11 跑馬燈標記 ........................... 296
11.3.12 特殊字符 ............................... 297
第12 章 JavaScript ........................ 299
12.1 JavaScript 的特點及作用 ........ 300
12.1.1 JavaScript 是被嵌入到HTML中的 ........................................ 300
12.1.2 JavaScript 運行的環境 ............ 301
12.1.3 JavaScript 是解釋執行的 ........ 301
12.1.4 JavaScript 是一種弱類型語言 ........................................ 302
12.1.5 JavaScript 以對象為基礎 ........ 302
12.1.6 JavaScript 通過事件驅動執行 ........................................ 302
12.1.7 JavaScript 的作用是多方麵的 ........................................ 303
12.1.8 JavaScript 是不斷發展和廣泛應用的 ............................. 303
12.2 JavaScript 的基本語法 ............ 303
12.2.1 基本數據結構 ......................... 303
12.2.2 運算符和錶達式 ..................... 306
12.2.3 控製結構和循環 ..................... 309
12.3 window 對象 ........................... 314
12.3.1 window 窗口對象的屬性 ........ 314
12.3.2 window 窗口對象的方法 ........ 316
12.4 document 對象 ......................... 320
12.4.1 document 對象的屬性 ............. 321
12.4.2 document 對象的write()和writeIn()方法 ........................... 323
12.4.3 document 對象的close()方法 ........................................ 323
12.4.4 document 對象的getSelection()方法 .................. 323
12.5 文本對象 ................................. 324
12.5.1 文本對象的defaultValue屬性 ........................................ 324
12.5.2 文本對象的name 屬性 ........... 326
12.5.3 文本對象的value 屬性 ........... 326
12.5.4 文本對象的focus()方法 ......... 326
12.5.5 文本對象的select()方法 ......... 327
12.6 按鈕對象 ................................. 329
12.6.1 button、submit、reset 對象 .... 329
12.6.2 checkbox 對象 ........................ 330
12.6.3 radio 對象 ............................... 330
12.7 location 對象 ............................ 332
12.7.1 hash 屬性 ................................ 332
12.7.2 href 屬性 ................................. 333
12.7.3 pathname 屬性 ........................ 334
12.7.4 protocol 屬性 .......................... 334
12.8 history 對象 ............................. 335
12.9 字符串對象 .............................. 335
12.9.1 轉義字符 ................................ 335
12.9.2 字符串對象的屬性 ................. 336
12.9.3 字符串對象的“+”連接方法 ........................................ 337
12.9.4 字符串對象charAt 方法 ......... 337
12.9.5 字符串對象indexOf 方法 ....... 338
12.9.6 字符串對象lastIndexOf方法 ........................................ 338
12.9.7 字符串對象substring .............. 339
12.9.8 字符串對象toLowerCase方法 ........................................ 339
12.9.9 字符串對象toUpperCase方法 ........................................ 340
12.10 日期對象 ............................... 340
12.10.1 日期對象的屬性 ................... 340
12.10.2 new 方法 ............................... 340
12.10.3 getYear()方法 ........................ 341
12.10.4 getMonth()方法 ..................... 342
12.10.5 getDate()方法 ........................ 342
12.10.6 getDay()方法 ......................... 343
12.10.7 getTime()方法 ....................... 344
12.10.8 setTime()方法 ........................ 344
12.10.9 setYear()方法 ........................ 345
12.10.10 getTimezoneOffset()方法 ..... 345
12.10.11 toGMTString()方法 ............. 346
12.10.12 toLocaleString()方法 ........... 347
12.11 數學對象 ............................... 347
12.11.1 Math 對象的屬性 .................. 347
12.11.2 Math 對象的abs 方法 ........... 348
12.11.3 Math 對象的acos 方法 .......... 349
12.11.4 Math 對象的max 方法 .......... 350
12.11.5 Math 對象的round/floor/ceil方法 ....................................... 350
12.11.6 Math 對象的random 方法 ..... 351
12.12 數組對象 ............................... 352
12.12.1 數組對象的創建 ................... 352
12.12.2 數組對象的擴充 ................... 353
第13 章 CSS 和XML ..................... 355
13.1 CSS .......................................... 356
13.1.1 什麼是CSS .......................... 356
13.1.2 CSS 的曆史 .......................... 357
13.1.3 使用CSS 的優點 .................. 357
13.1.4 CSS 樣式解決瞭一個普遍的問題 ................................. 358
13.1.5 使用CSS 之前 ...................... 358
13.1.6 如何將樣式錶加入網頁 ......... 359
13.1.7 CSS 的語法 .......................... 361
13.2 XML ........................................ 369
13.2.1 XML 簡介 ............................ 369
13.2.2 XML 的曆史 ......................... 369
13.2.3 XML 的作用 ........................ 370
13.2.4 XML 與HTML 的主要差異 .................................... 372
13.2.5 一個XML 文檔實例 ............. 372
13.2.6 XML 文檔形成一種樹結構 ... 373
13.2.7 XML 的語法規則 ................. 374
附錄A 大學學籍管理係統安裝配製說明書 ................................ 376
附錄B 大學學籍管理係統 ............... 394
附錄C 軟件測試中常見的中英文對照 .................................... 407
參考文獻 .......................................... 412
· · · · · · (
收起)