TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Python Web自動化測試設計與實現(簡體書)
滿額折

Python Web自動化測試設計與實現(簡體書)

人民幣定價:79 元
定  價:NT$ 474 元
優惠價:87412
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:12 點
相關商品
商品簡介
作者簡介
目次

商品簡介

本書是資深測試開發專家的經驗結晶,由淺入深地闡釋了Web自動化測試的相關技術,包括Web UI自動化測試、API自動化測試及測試相關的基礎開發。通過學習本書,讀者可以基本掌握Web測試相關的大部分技術點。本書是測試相關人員必備的技術指導。書中每個技術點都有示例代碼,理論與實踐相結合的方式能夠使讀者快速理解Web自動化測試。 本書循序漸進地講解了Web自動化測試的各項知識點,使任何層級的讀者都能從中受益。緒論部分介紹自動化方面的基礎知識,幫助讀者少走彎路,正確學會自動化測試。第1~3章介紹Selenium、Python以及Web UI自動化的相關基礎知識。第4章和第5章介紹Selenium IDE和Selenium常規對象接口。第6章介紹Web UI自動化特殊場景處理。第7章介紹UnitTest單元測試框架。第8章介紹分層框架設計與實現。第9章介紹測試腳本的部署。第10章和第11章介紹Web API相關基礎知識。第12章介紹通過Python發送HTTP請求。第13章介紹API工具的設計與實現。第14章介紹Web服務的集成工作。第15章介紹HTTP Mock的開發。 本書適合Web測試人員、Web自動化人員、Web開發人員等初中級讀者以及希望使用Python作為編程語言的軟件測試工程師參考。

作者簡介

陳曉伍,畢業於北京航空航天大學計算機科學與技術專業,資深測試開發專家,有超過10年測試開發相關經驗,對測試及自動化技術有較深的理解與應用,開發過若干自動化框架與平臺。曾就職過新浪、當當、科大訊飛等互聯網公司,負責新浪微博客戶端、當當電商網站以及靈犀語音助手等產品的自動化測試工作。現在創業公司擔任測試經理。精通Python語言,擅長Java、Selenium、QTP。創建testqa.cn測試社區,活躍於CSDN與51testing社區。

目次

緒論 1
第1章 Selenium基礎 9
1.1 Selenium的歷史和分支 9
1.2 Selenium的特點 12
1.3 Selenium名詞說明 12
1.3.1 Selenium RC 12
1.3.2 Selenium Server 12
1.3.3 Selenium WebDriver 13
1.3.4 Selenium Client 13
1.3.5 Selenium Grid 13
1.3.6 Selenium IDE 13
1.4 Selenium基本原理 14
1.5 Selenium環境搭建 15
1.5.1 Windows環境搭建 16
1.5.2 Ubuntu環境搭建 22
1.5.3 MacOS環境搭建 26
1.6 Selenium調用不同瀏覽器 28
1.6.1 調用Firefox瀏覽器 28
1.6.2 調用Chrome瀏覽器 29
1.6.3 調用IE瀏覽器 30
1.6.4 IE瀏覽器安全機制設置 30
1.7 Selenium Docker的使用 31
1.7.1 Docker環境安裝 32
1.7.2 Selenium Docker鏡像下載 35
1.7.3 Docker下運行Selenium腳本 36
1.8 Selenium 3說明 38
1.8.1 不再支持Selenium RC 38
1.8.2 僅支持JDK 1.8.0以上版本 38
1.8.3 Selenium IDE支持Chrome插件 38
1.8.4 FireFox需要安裝獨立驅動 38
1.8.5 僅支持IE 9.0以上版本 39
1.8.6 支持微軟的Edge瀏覽器 39
1.8.7 支持官方的SafariDriver 39

第2章 Python編程基礎 41
2.1 基礎語法 41
2.1.1 Python語句執行 41
2.1.2 Python語法格式 42
2.1.3 Python變量與類型 44
2.1.4 Python運算符與表達式 47
2.2 控制語句 52
2.2.1 if-else語句 52
2.2.2 for語句 53
2.2.3 while語句 53
2.2.4 continue語句 54
2.2.5 break語句 54
2.2.6 pass語句 55
2.3 模塊化 55
2.3.1 函數 55
2.3.2 類與實例 59
2.3.3 模塊文件 61
2.3.4 包 62
2.4 基礎數據結構 63
2.4.1 列表 63
2.4.2 元組 64
2.4.3 字典 65
2.4.4 遍歷數據 67
2.5 輸入/輸出 67
2.5.1 命令行輸入/輸出 67
2.5.2 文件輸入/輸出 69
2.6 內置函數 70
2.6.1 id函數 70
2.6.2 dir函數 71
2.6.3 help函數 71
2.6.4 type函數 72
2.6.5 isinstance函數 72
2.6.6 zip函數 72
2.6.7 filter函數 72
2.6.8 map函數 73
2.6.9 reduce函數 73
2.7 異常 73
2.7.1 異常捕獲 73
2.7.2 自定義異常 75
2.8 魔法特性 76
2.8.1 列表推導式 76
2.8.2 迭代器 77
2.8.3 生成器 78
2.8.4 閉包 79
2.8.5 裝飾器 79
2.8.6 內省機制 83
2.9 併發任務 86
2.9.1 多進程 86
2.9.2 多線程 91
2.9.3 協程 93
2.10 編解碼 96
2.10.1 源碼文件編碼 97
2.10.2 解釋器默認編碼 98
2.10.3 外部文件編碼 99
2.10.4 數據庫編碼 100
2.10.5 編解碼函數 100

第3章 Web UI自動化基礎 102
3.1 HTML與DOM簡介 102
3.2 學習元素定位方式 104
3.3 CSS定位技術 106
3.4 使用工具幫助定位 106
3.4.1 IE的Developer Tool 107
3.4.2 Firefox的Web開發者工具 107
3.4.3 Chrome的開發者工具 108
3.4.4 Firefox的XPath Checker插件 108
3.4.5 Chrome的XPath工具 109
3.4.6 Firefox的CSS插件 109
3.4.7 Chrome的CSS工具 110
3.4.8 Firefox的WebDriver Element Locator插件 110
3.5 Selenium中進行元素定位 112
3.5.1 獲取一個定位元素 112
3.5.2 獲取一組定位元素 113
3.5.3 匹配非第一個元素 114

第4章 Selenium IDE 115
4.1 Selenium IDE安裝 115
4.1.1 Firefox安裝 115
4.1.2 Selenium IDE在線安裝 116
4.1.3 Selenium IDE本地安裝 117
4.2 Selenium IDE功能介紹 120
4.2.1 Selenium IDE窗口 120
4.2.2 菜單欄 121
4.2.3 地址欄 123
4.2.4 工具欄 124
4.2.5 用例管理區 124
4.2.6 用例腳本開發區 125
4.2.7 信息輸出區 126
4.3 Selenium IDE使用 126
4.3.1 Selenium IDE錄製與回放 126
4.3.2 Selenium IDE腳本編輯 128
4.3.3 Selenium IDE元素定位 138
4.3.4 Selenium IDE匹配模式 141
4.3.5 Selenium IDE腳本轉換 143

第5章 Selenium常規對象接口 148
5.1 瀏覽器對象操作 148
5.1.1 查找元素方法 148
5.1.2 瀏覽器窗口方法 149
5.1.3 Cookie處理方法 149
5.2 WebElement對象操作 150
5.3 文本框對象操作 152
5.4 按鈕對象操作 152
5.5 下拉列表對象操作 153
5.6 鏈接對象操作 154

第6章 Web UI自動化特殊場景處理 156
6.1 處理多窗口測試場景 156
6.2 處理瀏覽器彈框場景 158
6.2.1 Alert對象及方法 158
6.2.2 優雅地處理Alert彈框 159
6.3 Selenium進行鍵盤鼠標操作 160
6.3.1 鍵盤操作 160
6.3.2 鼠標操作 161
6.4 非Web控件的操作實現 162
6.5 Selenium執行JavaScript及操作DOM 164
6.6 Selenium截屏操作 165

第7章 UnitTest單元測試框架 167
7.1 常規使用方式 167
7.2 測試套件使用 169
7.3 TestLoader的使用 170
7.4 UnitTest加載流程 172

第8章 分層框架設計與實現 173
8.1 數據驅動層 174
8.1.1 文件存儲 175
8.1.2 數據庫存儲 176
8.2 定位符驅動層 180
8.2.1 本地文件存儲 181
8.2.2 遠程服務存儲 183
8.3 頁面操作層 185
8.4 業務邏輯層 190
8.4.1 公共業務 190
8.4.2 常規業務 191
8.5 結果驅動層 193
8.5.1 日誌Logger記錄 193
8.5.2 自定義Logger記錄 199
8.5.3 郵件通知結果 203
8.6 異常處理層 204
8.6.1 程序異常處理 204
8.6.2 斷言異常處理 208
8.6.3 自定義異常類 209

第9章 測試腳本部署 211
9.1 使用SVN管理測試腳本 211
9.1.1 SVN服務安裝 212
9.1.2 SVN客戶端安裝 217
9.1.3 SVN使用簡介 219
9.1.4 SVN操作規範 223
9.2 遠程執行用例場景 224
9.3 Selenium Grid模塊及搭建 228
9.3.1 Selenium Grid環境搭建 229
9.3.2 Selenium Grid使用 232
9.4 持續集成的自動化測試 232

第10章 Web API介紹 236
10.1 HTTP簡介 236
10.1.1 HTTP請求報文 237
10.1.2 HTTP響應報文 239
10.2 Web API介紹 240
10.3 REST API介紹 241

第11章 Web API自動化基礎 243
11.1 正則表達式模塊學習 243
11.1.1 字符搜索 244
11.1.2 字符替換和分割 246
11.1.3 表達式修飾符 246
11.1.4 其他事項 247
11.2 XML讀寫模塊的學習 248
11.2.1 讀取XML文檔 249
11.2.2 寫入XML文檔 252
11.3 JSON模塊的學習 253
11.3.1 JSON串生成 254
11.3.2 JSON串解析 256
11.4 MD5、BASE64編解碼 256
11.4.1 BASE64編解碼 257
11.4.2 MD5加密 258
11.4.3 數據序列化 259

第12章 Python發送HTTP請求 261
12.1 HTTP請求發送 261
12.1.1 requests模塊安裝 261
12.1.2 發送GET請求 262
12.1.3 發送POST請求 264
12.1.4 發送multipart/form-data請求 265
12.1.5 發送其他類型請求 266
12.2 HTTP請求認證 266
12.2.1 HTTP Basic Auth 267
12.2.2 HTTP Digest Auth 267
12.2.3 OAuth認證 268
12.2.4 自定義認證 268
12.3 URL的編解碼 269
12.4 HTTP響應內容驗證 271
12.4.1 狀態碼驗證 271
12.4.2 響應頭驗證 272
12.4.3 響應體驗證 273
12.5 多線程發送請求 276
12.5.1 函數式多線程 276
12.5.2 類繼承式多線程 279

第13章 API工具設計與實現 282
13.1 最簡單的API工具 282
13.1.1 請求方法設置 284
13.1.2 請求頭設置 288
13.1.3 支持文件上傳 289
13.1.4 簡單結果驗證 292
13.2 測試數據讀取 293
13.2.1 測試數據格式 293
13.2.2 數據存儲方式 294
13.2.3 實現數據讀取 296
13.3 測試數據用例化 299
13.3.1 用例基本信息 299
13.3.2 用例套件信息 301
13.3.3 用例模板信息 302
13.4 測試流程控制 304
13.4.1 鉤子函數接口設計 305
13.4.2 鉤子函數接口調用 307
13.4.3 鉤子函數接口實現 309
13.5 測試結果驗證 311
13.5.1 完全匹配 311
13.5.2 內容包含 312
13.5.3 正則匹配 313
13.5.4 JSONPath 313
13.6 測試數據記錄 315
13.6.1 結果記錄 315
13.6.2 日誌記錄 317

第14章 集成為Web服務 319
14.1 Web服務簡介 319
14.1.1 Web框架選擇 320
14.1.2 DEMO實現 321
14.1.3 框架開發學習 322
14.2 Web上啟動用例執行 330
14.2.1 運行參數接收 332
14.2.2 測試請求處理 335
14.3 Web上查看測試結果 337
14.3.1 任務列表頁 338
14.3.2 用例結果頁 340
14.4 持續集成的API自動化測試 342
14.4.1 用例集保存 342
14.4.2 用例集執行 345

第15章 HTTP Mock開發 347
15.1 HTTP Mock介紹 347
15.2 HTTP Mock分析 348
15.3 HTTP Mock實現 349
15.3.1 根據請求URL過濾 349
15.3.2 根據請求方法過濾 350
15.3.3 根據請求頭過濾 352
15.3.4 根據請求數據過濾 353

參考文獻 356
結束語 357

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 412
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區