從零開始學(xué)Selenium自動化測試(基于Python·視頻教學(xué)版)
定 價:99 元
- 作者:李曉鵬 夜無雪
- 出版時間:2020/12/1
- ISBN:9787111670032
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:0
- 紙張:
- 版次:
- 開本:16開
本書基于Python語言,系統(tǒng)地介紹Selenium 3自動化測試的相關(guān)知識體系及應(yīng)用。書中的大部分知識點(diǎn)都匹配了相應(yīng)的案例,便于讀者進(jìn)行實(shí)踐。本書各章案例清晰易懂,并可獨(dú)立運(yùn)行,便于不同需求的讀者學(xué)習(xí)。另外,作者專門為本書錄制了約10小時的基礎(chǔ)操作視頻,幫助讀者高效、直觀地學(xué)習(xí)。相信通過對本書內(nèi)容的系統(tǒng)學(xué)習(xí),讀者可以全面掌握Selenium自動化測試技能。本書共13章,涵蓋的主要內(nèi)容有自動化測試基礎(chǔ)、Selenium簡介、環(huán)境部署、Selenium IDE、元素定位、WebDriver API、單元測試框架、Page Object設(shè)計(jì)模式、自動化測試框架設(shè)計(jì)、持續(xù)集成、Selenium Gird及虛擬化。本書內(nèi)容由淺入深,講解循序漸進(jìn),案例豐富,適合有Python語言基礎(chǔ)的測試入門人員閱讀,也適合測試工程師和Web自動化測試工程師閱讀。另外,本書還適合作為相關(guān)院校軟件測試專業(yè)的教學(xué)用書。
前言
第1章 自動化測試基礎(chǔ)1
1.1 自動化測試簡介1
1.1.1 自動化測試的定義2
1.1.2 自動化測試與手工測試的關(guān)系2
1.1.3 何時開展自動化測試3
1.1.4 自動化測試的優(yōu)勢4
1.1.5 自動化測試的實(shí)施場景4
1.1.6 自動化測試的成本5
1.2 自動化測試工具6
1.2.1 自主開發(fā)測試工具6
1.2.2 開源測試工具7
1.2.3 商業(yè)測試工具7
1.2.4 自動化測試工具的選擇8
1.2.5 “年度最佳”自動化測試工具10
1.3 自動化測試的分層13
第2章 Selenium基礎(chǔ)16
2.1 Selenium簡介16
2.1.1 Selenium的特點(diǎn)16
2.1.2 Selenium的發(fā)展史17
2.1.3 Selenium的工具集17
2.1.4 Selenium 3.0的新特性20
2.2 成就“大神”之路21
2.2.1 開發(fā)語言21
2.2.2 前端知識21
2.2.3 前端工具24
2.2.4 網(wǎng)絡(luò)基礎(chǔ)知識27
2.2.5 開發(fā)語言技能28
2.2.6 持續(xù)集成28
2.2.7 分布式28
2.2.8 自動化測試平臺28
第3章 環(huán)境部署29
3.1 Python的安裝29
3.1.1 Windows環(huán)境下的Python安裝30
3.1.2 Linux環(huán)境下的Python安裝35
3.2 Selenium的安裝36
3.2.1 在線安裝36
3.2.2 離線安裝37
3.3 IDE工具的選擇40
3.3.1 PyCharm簡介40
3.3.2 PyCharm的安裝41
3.3.3 PyCharm的簡單使用42
3.4 瀏覽器驅(qū)動程序的安裝46
3.4.1 Chrome瀏覽器的安裝46
3.4.2 Firefox瀏覽器的安裝49
第4章 Selenium IDE52
4.1 Selenium IDE簡介52
4.1.1 Selenium IDE的安裝52
4.1.2 Selenium IDE的運(yùn)行56
4.2 Selenium IDE菜單欄59
4.3 Selenium IDE工具欄62
4.4 Selenium IDE地址欄65
4.5 測試用例窗口65
4.5.1 導(dǎo)航面板66
4.5.2 腳本編輯區(qū)域72
4.6 日志窗口與引用窗口75
4.7 Katalon Studio自動化測試76
4.7.1 Katalon Recorder的安裝76
4.7.2 案例:Katalon Recorder的數(shù)據(jù)驅(qū)動83
第5章 元素定位86
5.1 元素定位簡介86
5.2 瀏覽器定位元素87
5.2.1 Firefox瀏覽器87
5.2.2 Chrome瀏覽器88
5.3 Web元素定位89
5.3.1 ID定位90
5.3.2 name定位91
5.3.3 class定位92
5.3.4 tag定位96
5.3.5 link定位98
5.3.6 partial_link_text定位99
5.3.7 XPath定位元素100
5.3.8 CSS定位元素108
5.3.9 find_element定位112
第6章 WebDriver API剖析115
6.1 操作瀏覽器的基本方法115
6.1.1 瀏覽器的大小控制115
6.1.2 瀏覽器的前進(jìn)與后退116
6.1.3 頁面刷新117
6.1.4 獲取頁面URL地址與標(biāo)題117
6.1.5 獲取瀏覽器類型119
6.1.6 關(guān)閉當(dāng)前窗口與退出瀏覽器119
6.2 元素的操作方法120
6.2.1 清除元素的內(nèi)容121
6.2.2 提交表單121
6.2.3 獲取元素的尺寸121
6.2.4 獲取元素的屬性與文本122
6.3 鼠標(biāo)操作124
6.3.1 右擊操作124
6.3.2 雙擊操作125
6.3.3 拖動操作125
6.3.4 鼠標(biāo)指針懸停操作126
6.4 鍵盤操作126
6.5 定位一組元素128
6.6 等待時間131
6.6.1 強(qiáng)制等待131
6.6.2 隱式等待132
6.6.3 顯式等待133
6.7 Frame切換136
6.8 警告框與彈出框的處理139
6.9 單選按鈕、復(fù)選框和下拉列表框的處理142
6.10 檢查元素是否啟用或顯示146
6.11 文件上傳與下載147
6.11.1 文件上傳147
6.11.2 文件下載153
6.12 Cookie的處理155
6.12.1 獲取Cookie156
6.12.2 獲取指定的Cookie159
6.12.3 添加Cookie159
6.12.4 刪除Cookie160
6.12.5 接口測試中的Cookie操作163
6.13 富文本165
6.14 標(biāo)簽頁切換166
6.15 屏幕截圖167
6.16 執(zhí)行JavaScript腳本169
6.16.1 JavaScript操作日期控件170
6.16.2 JavaScript處理多窗口173
6.16.3 JavaScript處理視頻174
6.16.4 JavaScript控制瀏覽器滾動條176
6.16.5 JavaScript的其他操作179
6.17 操作畫布179
第7章 單元測試框架181
7.1 單元測試簡介181
7.2 單元測試框架簡介181
7.3 UnitTest框架182
7.3.1 UnitTest簡介182
7.3.2 UnitTest的核心要素182
7.3.3 工作流程183
7.3.4 UnitTest案例實(shí)戰(zhàn)183
7.4 Pytest框架192
7.4.1 Pytest簡介192
7.4.2 安裝Pytest192
7.4.3 Pytest案例實(shí)戰(zhàn)195
7.4.4 測試用例的運(yùn)行控制197
7.4.5 在編譯器中配置Pytest201
第8章 自動化測試高級應(yīng)用202
8.1 HTML測試報告202
8.1.1 HTMLTestRunner簡介202
8.1.2 HTMLTestRunner的優(yōu)化202
8.1.3 測試報告的生成203
8.2 通過郵件發(fā)送測試報告204
8.2.1 郵件發(fā)送基礎(chǔ)204
8.2.2 通過郵件發(fā)送測試報告實(shí)例207
第9章 Page Object設(shè)計(jì)模式214
9.1 Page Object設(shè)計(jì)模式簡介214
9.2 Page Object案例實(shí)戰(zhàn)216
9.2.1 基類的維護(hù)216
9.2.2 測試頁面設(shè)計(jì)217
9.2.3 測試用例的設(shè)計(jì)218
9.3 定時運(yùn)行218
第10章 自動化測試框架224
10.1 自動化框架設(shè)計(jì)與實(shí)現(xiàn)的前期準(zhǔn)備224
10.1.1 INI配置文件224
10.1.2 INI配置文件的讀取225
10.1.3 讀取INI配置文件的封裝226
10.1.4 數(shù)據(jù)驅(qū)動操作227
10.1.5 獲取測試數(shù)據(jù)228
10.1.6 對數(shù)據(jù)驅(qū)動操作進(jìn)行封裝230
10.1.7 日志230
10.1.8 日志綜合案例233
10.2 自動化框架的設(shè)計(jì)與實(shí)現(xiàn)235
10.2.1 自動化框架的設(shè)計(jì)235
10.2.2 自動化框架的實(shí)現(xiàn)236
第11章 持續(xù)集成256
11.1 持續(xù)集成簡介256
11.2 Jenkins部署258
11.3 Jenkins與自動化268
第12章 Selenium Grid分布式測試276
12.1 Selenium Grid簡介276
12.2 Selenium Server配置276
12.3 Selenium Server工作原理277
12.4 Selenium Grid分布式測試案例實(shí)踐282
第13章 Selenium與虛擬化292
13.1 Docker簡介292
13.1.1 Docker架構(gòu)292
13.1.2 下載Docker293
13.2 安裝Docker294
13.3 Selenium與Docker的結(jié)合302
附錄310
參考文獻(xiàn)313