Selenium 3自動化測試實戰(zhàn) 基于Python語言
定 價:69 元
- 作者:蟲師編著
- 出版時間:2019/7/1
- ISBN:9787121369247
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.5
- 頁碼:11259
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書共分14章,第1章介紹了自動化測試相關的基礎知識;第2-10章從環(huán)境搭建,到WebDriverAPI介紹,再到單元測試框架的使用,介紹了自動化測試所用到的知識,最后再通過項目將這些知識串聯(lián)起來;第11章詳細介紹了如何使用Jenkins配置自動化測試項目;第12-14章介紹了移動自動化測試工具appium的使用。
《Selenium3自動化測試實戰(zhàn)——基于Python語言》重要知識點總結如下:
(1) Python3 編程語言基礎精講
(2) 通過20個例子展示W(wǎng)ebDriver API 的使用場景
(3) unittest & pytest 兩大單元測試框架全面介紹
(4) 數(shù)據(jù)驅動模型在項目中的應用
(5) 通過自動化項目串聯(lián)所有知識點
(6) Jenkins持續(xù)集成的安裝與配置
(7) appium 移動測試工具的應用
《Selenium2 自動化測試實戰(zhàn)——基于Python 語言》出版后,我陸續(xù)收到許多反饋,有很多同學(我習慣這么稱呼軟件測試的同行)通過這本書學會了Selenium 自動化測試,這是我寫這本書的初衷,能在你學習測試技術的道路上提供一點點幫助,我感到非常高興!也有同學向我反饋了書中的一些錯誤,在此深表感謝。
隨著我在自動化測試技術上的積累,我越發(fā)覺得《Selenium2 自動化測試實戰(zhàn)——基于Python 語言》一書有許多不足之處,有些內容已經(jīng)過時,有些技術需要更進一步的探討。2017 年的時候我萌生要寫第二版的想法,當時只是想對少部分內容進行修改,直接到2018年下半年才開始動筆重新整理內容。我寫書的方式是一遍遍地修改書中的內容,所以,雖然不是從頭到尾寫一本新書,但也花費了半年之久。
前面的章節(jié)安排與《Selenium2 自動化測試實戰(zhàn)——基于Python 語言》一書相比,變化不大,但里面的內容都有改動,主要是替換或修改了里面的例子。隨著我對自動化測試的理解,更正了前一本書中的部分觀點。
(1)加入了pytest 單元測試框架的使用方法,與unittest 相比,pytest 的功能更加強大,而且還有豐富的擴展庫,更適合用來做自動化測試。
(2)補充了Jenkins 的使用方法。
(3)增加了3 章appium 移動自動化測試工具的介紹。隨著移動互聯(lián)網(wǎng)的發(fā)展,移動自動化測試幾乎成為測試人員必備技能之一,appium 正是在Selenium 的基礎上擴展而來的自動化工具。
當然,在上一本的基礎上,本書也刪減了部分內容。
(1)刪掉了Selenium IDE 相關的內容,越來越多的測試人員使用WebDriver 編寫自動化腳本,Selenium IDE 作為瀏覽器的自動化插件,已經(jīng)很少有同學單獨使用它完成大型自動化項目了。
(2)刪掉了Python 多線程相關的內容。多線程的優(yōu)點是可以提高自動化測試的執(zhí)行速度,缺點是降低了自動化的穩(wěn)定性。本書介紹了減少測試用例執(zhí)行時間的其他方法。
(3)刪掉了BDD 行為驅動開發(fā)相關的內容,本書更聚焦于自動化測試技術,所以,其他技術請參考專業(yè)的書進行學習。
本書在命名時也頗為糾結,本書的內容屬于《Selenium2 自動化測試實戰(zhàn)——基于Python 語言》升級版,如果命名為《Selenium2 自動化測試實戰(zhàn)——基于Python 語言(第二版)》可以看出這種繼承關系,但是書中內容是基于Selenium3 編寫的,所以最終命名為《Selenium3 自動化測試實戰(zhàn)——基于Python 語言》。
在本書出版之際,Selenium4 已在開發(fā)當中,從Selenium 官方給出的消息來看,Selenium4 對于本書的內容影響很小。
最后,由于作者水平有限,書中難免有錯誤之處,希望你能將錯誤反饋給我,我將感激不盡。感謝編輯安娜,沒有她的幫助本書無法出版。感謝讀者的厚愛,正是你們的鼓勵
和支持,才使我有動力完成本書。
蟲師
2019 年6 月
蟲師,2011年6月開始在博客園持續(xù)分享測試技術和經(jīng)驗,在自動化測試、性能測試方面有著豐富實戰(zhàn)經(jīng)驗,另外,對Web開發(fā)技術也有一定的積累。前后擔任高級測試工程師、測試開發(fā)工程師,以及測試Leader等職位。
第1 章 自動化測試基礎 . 1
1.1 分層的自動化測試 1
1.2 適合自動化測試的項目 3
1.3 如何學習UI 自動化測試 4
1.4 Selenium 簡介 4
1.5 appium 簡介 . 8
第2 章 測試環(huán)境搭建 10
2.1 安裝Python 10
2.2 安裝Selenium 12
2.3 第一個Selenium 自動化測試腳本 . 12
2.4 瀏覽器驅動 13
第3 章 Python 基礎 . 16
3.1 Python 哲學 16
3.2 輸出 18
3.3 分支與循環(huán) 20
3.4 列表、元組與字典 22
3.5 函數(shù)、類和方法 25
3.6 模組 27
3.7 異常 34
3.8 新手常犯的錯誤 38
第4 章 WebDriver API 40
4.1 從定位元素開始 40
4.2 控制瀏覽器 52
4.3 WebDriver 中的常用方法 53
4.4 鼠標操作 55
4.5 鍵盤操作 57
4.6 獲得驗證信息 58
4.7 設置元素等待 59
4.8 定位一組元素 63
4.9 多表單切換 64
4.10 多窗口切換 65
4.11 警告框處理 67
4.12 下拉框處理 69
4.13 上傳文件 70
4.14 下載文件 72
4.15 操作Cookie 74
4.16 調用JavaScript . 75
4.17 處理HTML5 視頻播放 . 77
4.18 滑動解鎖 79
4.19 窗口截圖 82
4.20 關閉窗口 83
第5 章 自動化測試模型 . 84
5.1 基本概念 84
5.2 自動化測試模型 85
5.3 模塊化與參數(shù)化 86
5.4 讀取數(shù)據(jù)文件 89
第6 章 unittest 單元測試框架 96
6.1 認識unittest 97
6.2 關于unittest 還需要知道的 . 108
6.2.1 測試用例的執(zhí)行順序 108
6.2.2 執(zhí)行多級目錄的測試用例 110
6.2.3 跳過測試和預期失敗 111
6.2.4 Fixtures . 113
6.3 編寫Web 自動化測試 . 114
第7 章 unittest 擴展 . 118
7.1 HTML 測試報告 118
7.2 數(shù)據(jù)驅動應用 124
7.3 自動發(fā)送郵件功能 134
第8 章 Page Object 140
8.1 認識Page Object 140
8.2 實現(xiàn)Paget Object . 141
8.2.1 Paget Object 簡單實例 . 142
8.2.2 改進Paget Object 封裝 143
8.3 poium 測試庫 . 146
第9 章 pytest 單元測試框架 150
9.1 pytest 簡單例子 150
9.2 pytest 的基本使用方法 152
9.3 pytest 擴展 163
9.4 構建Web 自動化測試項目 . 166
9.4.1 項目結構介紹 166
9.4.2 主要代碼實現(xiàn) 168
9.4.3 測試用例的運行與測試報告 173
第10 章 Selenium Grid . 176
10.1 Selenium Grid 介紹 . 176
10.1.1 Selenium Server 環(huán)境配置 . 176
10.1.2 Selenium Grid 工作原理 178
10.2 Selenium Grid 應用 180
第11 章 Jenkins 持續(xù)集成 . 187
11.1 下載Tomcat 188
11.2 下載Jenkins . 189
11.3 安裝配置Jenkins . 190
11.4 Jenkins 的基本使用 192
11.5 Selenium 自動化項目配置 197
第12 章 appium 的介紹與安裝 210
12.1 appium 介紹 . 210
12.2 appium 環(huán)境搭建 . 215
12.2.1 Android Studio . 216
12.2.2 Android 模擬器 219
12.2.3 appium Desktop 222
12.2.4 Python Client 223
12.2.5 第一個appium 測試 223
第13 章 appium 基礎 226
13.1 Desired Capabilities 226
13.2 控件定位 228
13.3 appium 的常用API 235
13.4 appium Desktop 243
13.4.1 準備工作 243
13.4.2 控件定位 245
13.4.3 腳本錄制 246
第14 章 appium 測試實例 . 249
14.1 appium 應用測試 . 249
14.1.1 原生應用測試 249
14.1.2 移動Web 應用測試 . 250
14.1.3 混合應用測試 252
14.2 App 測試實戰(zhàn) 254