-
>
決戰(zhàn)行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調(diào)優(yōu)實踐之路
-
>
第一行代碼Android
-
>
深度學(xué)習(xí)
-
>
Unreal Engine 4藍(lán)圖完全學(xué)習(xí)教程
-
>
深入理解計算機系統(tǒng)-原書第3版
-
>
Word/Excel PPT 2013辦公應(yīng)用從入門到精通-(附贈1DVD.含語音視頻教學(xué)+辦公模板+PDF電子書)
PYTHON WEB自動化測試設(shè)計與實現(xiàn) 版權(quán)信息
- ISBN:9787302519294
- 條形碼:9787302519294 ; 978-7-302-51929-4
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
PYTHON WEB自動化測試設(shè)計與實現(xiàn) 本書特色
本書是資深測試開發(fā)專家的經(jīng)驗結(jié)晶,由淺入深地闡釋了Web自動化測試的相關(guān)技術(shù),包括Web UI自動化測試、API自動化測試及測試相關(guān)的基礎(chǔ)開發(fā)。通過學(xué)習(xí)本書,讀者可以基本掌握Web測試相關(guān)的大部分技術(shù)點。本書是測試相關(guān)人員**的技術(shù)指導(dǎo)。書中每個技術(shù)點都有示例代碼,理論與實踐相結(jié)合的方式能夠使讀者快速理解Web自動化測試。 本書循序漸進地講解了Web自動化測試的各項知識點,使任何層級的讀者都能從中受益。緒論部分介紹自動化方面的基礎(chǔ)知識,幫助讀者少走彎路,正確學(xué)會自動化測試。第1~3章介紹Selenium、Python以及Web UI自動化的相關(guān)基礎(chǔ)知識。第4章和第5章介紹Selenium IDE和Selenium常規(guī)對象接口。第6章介紹Web UI自動化特殊場景處理。第7章介紹UnitTest單元測試框架。第8章介紹分層框架設(shè)計與實現(xiàn)。第9章介紹測試腳本的部署。第10章和第11章介紹Web API相關(guān)基礎(chǔ)知識。第12章介紹通過Python發(fā)送HTTP請求。第13章介紹API工具的設(shè)計與實現(xiàn)。第14章介紹Web服務(wù)的集成工作。第15章介紹HTTP Mock的開發(fā)。 本書適合Web測試人員、Web自動化人員、Web開發(fā)人員等初中級讀者以及希望使用Python作為編程語言的軟件測試工程師參考。
PYTHON WEB自動化測試設(shè)計與實現(xiàn) 內(nèi)容簡介
本書是資深測試開發(fā)專家的經(jīng)驗結(jié)晶,由淺入深地闡釋了Web自動化測試的相關(guān)技術(shù),包括Web UI自動化測試、API自動化測試及測試相關(guān)的基礎(chǔ)開發(fā)。通過學(xué)習(xí)本書,讀者可以基本掌握Web測試相關(guān)的大部分技術(shù)點。本書是測試相關(guān)人員推薦的技術(shù)指導(dǎo)。書中每個技術(shù)點都有示例代碼,理論與實踐相結(jié)合的方式能夠使讀者快速理解Web自動化測試。 本書循序漸進地講解了Web自動化測試的各項知識點,使任何層級的讀者都能從中受益。緒論部分介紹自動化方面的基礎(chǔ)知識,幫助讀者少走彎路,正確學(xué)會自動化測試。~3章介紹Selenium、Python以及Web UI自動化的相關(guān)基礎(chǔ)知識。第4章和第5章介紹Selenium IDE和Selenium常規(guī)對象接口。第6章介紹Web UI自動化特殊場景處理。第7章介紹UnitTest單元測試框架。第8章介紹分層框架設(shè)計與實現(xiàn)。第9章介紹測試腳本的部署。0章和1章介紹Web API相關(guān)基礎(chǔ)知識。2章介紹通過Python發(fā)送HTTP請求。3章介紹API工具的設(shè)計與實現(xiàn)。4章介紹Web服務(wù)的集成工作。5章介紹HTTP Mock的開發(fā)。 本書適合Web測試人員、Web自動化人員、Web開發(fā)人員等初中級讀者以及希望使用Python作為編程語言的軟件測試工程師參考。
PYTHON WEB自動化測試設(shè)計與實現(xiàn) 目錄
第1章 Selenium基礎(chǔ) 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環(huán)境搭建 15
1.5.1 Windows環(huán)境搭建 16
1.5.2 Ubuntu環(huán)境搭建 22
1.5.3 MacOS環(huán)境搭建 26
1.6 Selenium調(diào)用不同瀏覽器 28
1.6.1 調(diào)用Firefox瀏覽器 28
1.6.2 調(diào)用Chrome瀏覽器 29
1.6.3 調(diào)用IE瀏覽器 30
1.6.4 IE瀏覽器安全機制設(shè)置 30
1.7 Selenium Docker的使用 31
1.7.1 Docker環(huán)境安裝 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需要安裝獨立驅(qū)動 38
1.8.5 僅支持IE 9.0以上版本 39
1.8.6 支持微軟的Edge瀏覽器 39
1.8.7 支持官方的SafariDriver 39
第2章 Python編程基礎(chǔ) 41
2.1 基礎(chǔ)語法 41
2.1.1 Python語句執(zhí)行 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 函數(shù) 55
2.3.2 類與實例 59
2.3.3 模塊文件 61
2.3.4 包 62
2.4 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu) 63
2.4.1 列表 63
2.4.2 元組 64
2.4.3 字典 65
2.4.4 遍歷數(shù)據(jù) 67
2.5 輸入/輸出 67
2.5.1 命令行輸入/輸出 67
2.5.2 文件輸入/輸出 69
2.6 內(nèi)置函數(shù) 70
2.6.1 id函數(shù) 70
2.6.2 dir函數(shù) 71
2.6.3 help函數(shù) 71
2.6.4 type函數(shù) 72
2.6.5 isinstance函數(shù) 72
2.6.6 zip函數(shù) 72
2.6.7 filter函數(shù) 72
2.6.8 map函數(shù) 73
2.6.9 reduce函數(shù) 73
2.7 異常 73
2.7.1 異常捕獲 73
2.7.2 自定義異常 75
2.8 魔法特性 76
2.8.1 列表推導(dǎo)式 76
2.8.2 迭代器 77
2.8.3 生成器 78
2.8.4 閉包 79
2.8.5 裝飾器 79
2.8.6 內(nèi)省機制 83
2.9 并發(fā)任務(wù) 86
2.9.1 多進程 86
2.9.2 多線程 91
2.9.3 協(xié)程 93
2.10 編解碼 96
2.10.1 源碼文件編碼 97
2.10.2 解釋器默認(rèn)編碼 98
2.10.3 外部文件編碼 99
2.10.4 數(shù)據(jù)庫編碼 100
2.10.5 編解碼函數(shù) 100
第3章 Web UI自動化基礎(chǔ) 102
3.1 HTML與DOM簡介 102
3.2 學(xué)習(xí)元素定位方式 104
3.3 CSS定位技術(shù) 106
3.4 使用工具幫助定位 106
3.4.1 IE的Developer Tool 107
3.4.2 Firefox的Web開發(fā)者工具 107
3.4.3 Chrome的開發(fā)者工具 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 用例管理區(qū) 124
4.2.6 用例腳本開發(fā)區(qū) 125
4.2.7 信息輸出區(qū) 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腳本轉(zhuǎn)換 143
第5章 Selenium常規(guī)對象接口 148
5.1 瀏覽器對象操作 148
5.1.1 查找元素方法 148
5.1.2 瀏覽器窗口方法 149
5.1.3 Cookie處理方法 149
5.2 WebElement對象操作 150
5.3 文本框?qū)ο蟛僮?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 優(yōu)雅地處理Alert彈框 159
6.3 Selenium進行鍵盤鼠標(biāo)操作 160
6.3.1 鍵盤操作 160
6.3.2 鼠標(biāo)操作 161
6.4 非Web控件的操作實現(xiàn) 162
6.5 Selenium執(zhí)行JavaScript及操作DOM 164
6.6 Selenium截屏操作 165
第7章 UnitTest單元測試框架 167
7.1 常規(guī)使用方式 167
7.2 測試套件使用 169
7.3 TestLoader的使用 170
7.4 UnitTest加載流程 172
第8章 分層框架設(shè)計與實現(xiàn) 173
8.1 數(shù)據(jù)驅(qū)動層 174
8.1.1 文件存儲 175
8.1.2 數(shù)據(jù)庫存儲 176
8.2 定位符驅(qū)動層 180
8.2.1 本地文件存儲 181
8.2.2 遠(yuǎn)程服務(wù)存儲 183
8.3 頁面操作層 185
8.4 業(yè)務(wù)邏輯層 190
8.4.1 公共業(yè)務(wù) 190
8.4.2 常規(guī)業(yè)務(wù) 191
8.5 結(jié)果驅(qū)動層 193
8.5.1 日志Logger記錄 193
8.5.2 自定義Logger記錄 199
8.5.3 郵件通知結(jié)果 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服務(wù)安裝 212
9.1.2 SVN客戶端安裝 217
9.1.3 SVN使用簡介 219
9.1.4 SVN操作規(guī)范 223
9.2 遠(yuǎn)程執(zhí)行用例場景 224
9.3 Selenium Grid模塊及搭建 228
9.3.1 Selenium Grid環(huán)境搭建 229
9.3.2 Selenium Grid使用 232
9.4 持續(xù)集成的自動化測試 232
第10章 Web API介紹 236
10.1 HTTP簡介 236
10.1.1 HTTP請求報文 237
10.1.2 HTTP響應(yīng)報文 239
10.2 Web API介紹 240
10.3 REST API介紹 241
第11章 Web API自動化基礎(chǔ) 243
11.1 正則表達式模塊學(xué)習(xí) 243
11.1.1 字符搜索 244
11.1.2 字符替換和分割 246
11.1.3 表達式修飾符 246
11.1.4 其他事項 247
11.2 XML讀寫模塊的學(xué)習(xí) 248
11.2.1 讀取XML文檔 249
11.2.2 寫入XML文檔 252
11.3 JSON模塊的學(xué)習(xí) 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 數(shù)據(jù)序列化 259
第12章 Python發(fā)送HTTP請求 261
12.1 HTTP請求發(fā)送 261
12.1.1 requests模塊安裝 261
12.1.2 發(fā)送GET請求 262
12.1.3 發(fā)送POST請求 264
12.1.4 發(fā)送multipart/form-data請求 265
12.1.5 發(fā)送其他類型請求 266
12.2 HTTP請求認(rèn)證 266
12.2.1 HTTP Basic Auth 267
12.2.2 HTTP Digest Auth 267
12.2.3 OAuth認(rèn)證 268
12.2.4 自定義認(rèn)證 268
12.3 URL的編解碼 269
12.4 HTTP響應(yīng)內(nèi)容驗證 271
12.4.1 狀態(tài)碼驗證 271
12.4.2 響應(yīng)頭驗證 272
12.4.3 響應(yīng)體驗證 273
12.5 多線程發(fā)送請求 276
12.5.1 函數(shù)式多線程 276
12.5.2 類繼承式多線程 279
第13章 API工具設(shè)計與實現(xiàn) 282
13.1 *簡單的API工具 282
13.1.1 請求方法設(shè)置 284
13.1.2 請求頭設(shè)置 288
13.1.3 支持文件上傳 289
13.1.4 簡單結(jié)果驗證 292
13.2 測試數(shù)據(jù)讀取 293
13.2.1 測試數(shù)據(jù)格式 293
13.2.2 數(shù)據(jù)存儲方式 294
13.2.3 實現(xiàn)數(shù)據(jù)讀取 296
13.3 測試數(shù)據(jù)用例化 299
13.3.1 用例基本信息 299
13.3.2 用例套件信息 301
13.3.3 用例模板信息 302
13.4 測試流程控制 304
13.4.1 鉤子函數(shù)接口設(shè)計 305
13.4.2 鉤子函數(shù)接口調(diào)用 307
13.4.3 鉤子函數(shù)接口實現(xiàn) 309
13.5 測試結(jié)果驗證 311
13.5.1 完全匹配 311
13.5.2 內(nèi)容包含 312
13.5.3 正則匹配 313
13.5.4 JSONPath 313
13.6 測試數(shù)據(jù)記錄 315
13.6.1 結(jié)果記錄 315
13.6.2 日志記錄 317
第14章 集成為Web服務(wù) 319
14.1 Web服務(wù)簡介 319
14.1.1 Web框架選擇 320
14.1.2 DEMO實現(xiàn) 321
14.1.3 框架開發(fā)學(xué)習(xí) 322
14.2 Web上啟動用例執(zhí)行 330
14.2.1 運行參數(shù)接收 332
14.2.2 測試請求處理 335
14.3 Web上查看測試結(jié)果 337
14.3.1 任務(wù)列表頁 338
14.3.2 用例結(jié)果頁 340
14.4 持續(xù)集成的API自動化測試 342
14.4.1 用例集保存 342
14.4.2 用例集執(zhí)行 345
第15章 HTTP Mock開發(fā) 347
15.1 HTTP Mock介紹 347
15.2 HTTP Mock分析 348
15.3 HTTP Mock實現(xiàn) 349
15.3.1 根據(jù)請求URL過濾 349
15.3.2 根據(jù)請求方法過濾 350
15.3.3 根據(jù)請求頭過濾 352
15.3.4 根據(jù)請求數(shù)據(jù)過濾 353
參考文獻 356
結(jié)束語 357
PYTHON WEB自動化測試設(shè)計與實現(xiàn) 作者簡介
陳曉伍,畢業(yè)于北京航空航天大學(xué)計算機科學(xué)與技術(shù)專業(yè),資深測試開發(fā)專家,有超過10年測試開發(fā)相關(guān)經(jīng)驗,對測試及自動化技術(shù)有較深的理解與應(yīng)用,開發(fā)過若干自動化框架與平臺。曾就職過新浪、當(dāng)當(dāng)、科大訊飛等互聯(lián)網(wǎng)公司,負(fù)責(zé)新浪微博客戶端、當(dāng)當(dāng)電商網(wǎng)站以及靈犀語音助手等產(chǎn)品的自動化測試工作。現(xiàn)在創(chuàng)業(yè)公司擔(dān)任測試經(jīng)理。精通Python語言,擅長Java、Selenium、QTP。創(chuàng)建testqa.cn測試社區(qū),活躍于CSDN與51testing社區(qū)。
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
月亮虎
- >
名家?guī)阕x魯迅:朝花夕拾
- >
月亮與六便士
- >
莉莉和章魚
- >
新文學(xué)天穹兩巨星--魯迅與胡適/紅燭學(xué)術(shù)叢書(紅燭學(xué)術(shù)叢書)
- >
史學(xué)評論
- >
我從未如此眷戀人間