Python Web自動化測試設計與實現

作者:陳曉伍

出版:清華大學出版社

年代:2019 更多圖書信息

電子紙書:¥51.35 定價: ¥79 紙質書最低¥53.8起,點此購買

圖書簡介

本書是資深測試開發專家的經驗結晶,由淺入深地闡釋了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作為編程語言的軟件測試工程師參考。

(展開)

目錄

緒論 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
(展開)

書頁展示

更多圖書信息
數據來源于網絡,如有問題,請反饋至此郵箱:[email protected]

作者:陳曉伍
出版:清華大學出版社

ISBN:9787302519294

出版日期:2019-04-01

清華大學出版社

清華大學出版社

清華大學出版社成立于1980年6月,是由教育部主管、清華大學主辦的綜合出版單位。植根于“清華”這座久負盛名的高等學府,秉承清華人“自強不息,厚德載物”的人文精神,清華大學出版社在短短二十多年的時間里,迅速成長起來。作為來自一流大學的出版單位,清華大學出版社始終堅持弘揚科技文化產業、服務科教興國戰略的出版方向,把出版高等學校教學用書和科技圖書作為主要任務,并為促進學術交流、繁榮出版事業設立了多項出版基金,逐漸形成了以出版高水平的教材和學術專著為主的鮮明特色,在教育出版領域樹立了強勢品牌。目前,清華版教材已在全國一百多所院校得到廣泛使用。高品質、多層次的計算機圖書是清華大學出版社的一大品牌支柱。20世紀80年代末,在席卷全球的信息化浪潮中,清華大學出版社快速切入計算機圖書市場,逐漸成為并一直保持這一市場的領先地位,為發展中國計算機教育做出了巨大貢獻。

(展開)

使用移動設備
掃描二維碼下載客戶端

注:目前僅提供安卓客戶端下載

Copyright ?2020  BookAsk 書問  |  京ICP證160134號   |  

京公網安備 11010802026432號

  |  出版物經營許可證新出發京零字第海150168號   |  營業執照:91110108318038279C   |  網站地圖   |  關于我們   |  合作伙伴   |  商務合作   |  友情鏈接
深蓝海域投注 大庆麻将手机版下载 广州小姐指南 体彩环岛赛玩法规则 怎样看好运快3走势 有在秒速赛车赢钱的吗 电脑足球比分软件 北京快3一定牛开奖直播 黑龙江36选7走势图大星 188比分直播客网 a股模拟交易软件 北京快乐8最高连续大小 澳洲幸运5技巧打法 内蒙星悦麻将下载安装 上海快三和态走势一定牛 双色球100最新走势图 日本av成人小说