Selenium 4 自動化測試項目實戰(zhàn):基于 Python 3
鏈接:https://pan.baidu.com/s/1rCTUpNHV1OgdxuiCjPBqzA?pwd=nc5s?
提取碼:nc5s

本書真正為軟件測試人員考慮,在有限的篇幅內(nèi)既講解了必需的Python語言知識,也設(shè)計了很多演示案例、項目等,內(nèi)容翔實,代碼可以拿來即用。
本書作者具有豐富的實戰(zhàn)經(jīng)驗,均具有多年測試開發(fā)經(jīng)驗,長期從事自動化測試框架、分布式測試平臺設(shè)計與開發(fā)工作。
顛覆傳統(tǒng),循序漸進(jìn)落地自動化測試項目,在項目中學(xué)會Selenium自動化與Python語言。
此外還介紹了平臺建設(shè)相關(guān)一些實用技術(shù),如平臺搭建維護(hù)、項目部署以及運(yùn)用Docker容器技術(shù)進(jìn)行測試等。
內(nèi)容簡介
Selenium是目前非常流行的一種自動化測試工具。本書基于Python 3語言講述了新的Selenium 4的基本理論與操作,涉及各種高級應(yīng)用,以及如何進(jìn)行項目實戰(zhàn),并提供了詳細(xì)的自動化平臺部署步驟。
本書共14章,分為4篇。
第1篇介紹了Selenium概況、相關(guān)的基礎(chǔ)知識及環(huán)境的搭建步驟;
第2篇介紹了Selenium涉及的各種技術(shù),包括前端技術(shù)、Selenium元素定位、Selenium常用方法及WebDriver進(jìn)階應(yīng)用;
第3篇以攜程訂票系統(tǒng)為例,深入探討了如何進(jìn)行項目實戰(zhàn)與優(yōu)化,詳細(xì)介紹了項目重構(gòu)、數(shù)據(jù)驅(qū)動測試、Page Object設(shè)計模式及行為驅(qū)動等相關(guān)的各種常用技術(shù);
第4篇介紹了平臺建設(shè)相關(guān)的一些實用技術(shù),如平臺搭建維護(hù)、項目部署及運(yùn)用Docker容器技術(shù)進(jìn)行測試等。
為了使讀者不但能掌握Selenium自動化測試,而且能夠迅速獲得項目經(jīng)驗,徹底掌握并靈活運(yùn)用到實際的測試項目中,本書注重理論與實踐相結(jié)合,提供了大量典型的自動化測試實例,按照由淺入深、前后照應(yīng)的順序來安排內(nèi)容。
作者簡介
田春成,多年測試開發(fā)經(jīng)驗,長期從事自動化測試框架、分布式測試平臺設(shè)計與開發(fā)工作?,F(xiàn)為某創(chuàng)業(yè)公司技術(shù)總監(jiān)。
李靖,資深測試開發(fā)工程師,十年測試開發(fā)經(jīng)驗。曾在外企SAP從事自動化測試、性能測試工作。長期從事自動化測試技術(shù)選型、技術(shù)研究和框架設(shè)計相關(guān)工作。
精彩書評
本書基于Selenium 4,通過深入淺出的方式,對Web自動化測試進(jìn)行了系統(tǒng)的講解。結(jié)合實際案例和項目,讀者可以深入了解Selenium的各種用法和技巧,以及常見的測試應(yīng)用場景和解決方案。無論是初學(xué)者還是有經(jīng)驗的測試開發(fā)人員,都可以從中受益。
南瑞集團(tuán)有限公司測試經(jīng)理 王志勇
自動化測試近幾年比較熱門,市場需求也比較大。本書的特點(diǎn)是能真正地為軟件測試人員考慮,在有限的篇幅內(nèi)既講解了必需的Python語言知識,也設(shè)計了很多演示案例、項目等。本書內(nèi)容翔實,代碼可以拿來即用。
本書適合初學(xué)者,書中的知識體系是層層遞進(jìn)的,比較容易掌握和吸收;也適合有經(jīng)驗的從業(yè)者,書中內(nèi)容有一定的深度和廣度。
蘇州博納訊動軟件有限公司測試總監(jiān) 金偉
本書測試案例豐富,層層深入地講解了UnitTest和pytest兩大主流測試框架在實際項目中的應(yīng)用。在測試行業(yè)競爭高度激烈的今天,自動化測試已是必不可少的技能之一。讀完本書,相當(dāng)于進(jìn)入了測試開發(fā)的大門。
易咖智車測試總監(jiān) 李洋
目錄
第一篇 環(huán)境篇
第1章 自動化測試簡介
1.1 什么是自動化測試
1.2 自動化測試的分類
1.3 自動化測試項目的適用條件
1.4 自動化測試總結(jié)
1.5 為什么選擇Selenium
1.5.1 Selenium的特性
1.5.2 Selenium的發(fā)展
第2章 Selenium IDE的使用
2.1 Selenium IDE
2.1.1 Selenium IDE的安裝步驟
2.1.2 Selenium IDE的功能界面與工具欄
2.1.3 Selenium IDE腳本
2.1.4 wait for text、assert text和verify text命令
2.1.5 通過實例講解store title和echo命令
2.2 從Selenium IDE導(dǎo)出腳本
第3章 Python與Selenium環(huán)境搭建
3.1 Windows環(huán)境下的安裝
3.1.1 安裝Python
3.1.2 安裝Selenium
3.1.3 安裝開發(fā)工具和IDE
3.1.4 搭建不同的瀏覽器環(huán)境
3.2 macOS環(huán)境下的安裝
3.2.1 安裝Python
3.2.2 安裝Selenium
3.2.3 瀏覽器的驅(qū)動
第二篇 基礎(chǔ)篇
第4章 Selenium元素定位
4.1 Python基礎(chǔ)知識
4.1.1 數(shù)字類型
4.1.2 字符串類型
4.1.3 常用的判斷與循環(huán)語句
4.1.4 列表對象
4.2 Selenium八大定位
4.2.1 id定位
4.2.2 name定位
4.2.3 class定位
4.2.4 link_text定位
4.2.5 partial_link_text定位
4.2.6 CSS定位
4.2.7 XPath定位
4.2.8 tag_name定位
4.3 表格定位
4.3.1 遍歷表格單元格
4.3.2 定位表格中的特定元素
4.3.3 定位表格中的子元素
4.4 關(guān)聯(lián)元素定位策略
4.4.1 Above模式
4.4.2 Below模式
4.4.3 Left of模式
4.4.4 Right of模式
4.4.5 Near模式
4.4.6 Chaining relative locators模式
第5章 Selenium常用方法
5.1 基本方法
5.2 特殊元素定位
5.2.1 鼠標(biāo)事件操作
5.2.2 常用的鍵盤事件
5.2.3 Select操作
5.2.4 定位一組元素
5.3 Frame操作
5.4 上傳與下載附件
5.4.1 上傳附件操作方式一
5.4.2 上傳附件操作方式二
5.4.3 上傳附件操作方式三
5.4.4 下載附件
5.5 Cookie操作
5.6 驅(qū)動管理模式
5.7 顏色驗證
5.8 3種等待模式
5.8.1 強(qiáng)制等待模式
5.8.2 隱式等待模式
5.8.3 顯式等待模式
5.9 多窗口切換
5.10 彈框操作
5.11 ChromeOptions
5.12 滑塊操作
5.13 元素截圖
5.14 JavaScript操作頁面元素
5.15 jQuery操作頁面元素
5.16 innerText與innerHTML
5.17 通過源碼理解By.ID
第三篇 項目篇
第6章 項目實戰(zhàn)
6.1 項目需求分析匯總
6.1.1 制訂項目計劃
6.1.2 編寫測試用例
6.2 業(yè)務(wù)場景的覆蓋與分拆
6.2.1 逐個分析頁面元素
6.2.2 分層創(chuàng)建腳本
6.3 項目代碼總結(jié)
第7章 項目重構(gòu)與代碼優(yōu)化
7.1 項目重構(gòu)
7.1.1 元素定位方法優(yōu)化
7.1.2 新增崗位優(yōu)化
7.1.3 代碼分層優(yōu)化
7.1.4 三層架構(gòu)
7.2 代碼優(yōu)化
7.2.1 無人值守自動化
7.2.2 等待時間優(yōu)化
第8章 數(shù)據(jù)驅(qū)動測試
8.1 一般文件操作
8.1.1 文本文件操作
8.1.2 CSV文件操作
8.1.3 Excel文件操作
8.1.4 JSON文件操作
8.1.5 XML文件操作
8.1.6 YAML文件操作
8.1.7 文件夾操作
8.2 通過Excel參數(shù),實現(xiàn)參數(shù)與腳本的分離
8.2.1 創(chuàng)建Excel文件,維護(hù)測試數(shù)據(jù)
8.2.2 Framework Log設(shè)置
8.2.3 初步實現(xiàn)數(shù)據(jù)驅(qū)動
8.3 數(shù)據(jù)驅(qū)動框架DDT
8.3.1 單元測試
8.3.2 數(shù)據(jù)驅(qū)動框架應(yīng)用
8.3.3 DDT+Excel實現(xiàn)循環(huán)測試
第9章 Page Object設(shè)計模式
9.1 什么是Page Object
9.2 Page Object實戰(zhàn)
9.2.1 Common層代碼分析
9.2.2 Base層代碼分析
9.2.3 PageObject層代碼分析
9.2.4 TestCases層代碼分析
9.2.5 Data層分析
9.2.6 Logs層分析
9.2.7 Reports層分析
9.2.8 其他分析
9.2.9 執(zhí)行Page Object項目
第10章 pytest框架實戰(zhàn)
10.1 pytest與Allure
10.1.1 pytest的安裝
10.1.2 簡單測試案例介紹
10.1.3 引入類來管理測試方法
10.1.4 setup和teardown方法應(yīng)用
10.1.5 fixtures功能應(yīng)用
10.1.6 pytest如何做參數(shù)化
10.1.7 conftest應(yīng)用
10.1.8 運(yùn)行Selenium
10.1.9 使用pytest生成測試報告
10.1.10 集成Allure報告
10.2 使用pytest重構(gòu)項目
第11章 行為驅(qū)動測試
11.1 安裝環(huán)境
11.2 行為驅(qū)動之小試牛刀
11.3 基于Selenium的行為驅(qū)動測試
11.4 結(jié)合Page Object的行為驅(qū)動測試
第四篇 平臺篇
第12章 測試平臺維護(hù)與項目部署
12.1 Git應(yīng)用
12.1.1 安裝Git
12.1.2 Git常用操作
12.1.3 運(yùn)用GitHub
12.2 安裝Jenkins
12.3 配置Jenkins
12.4 Jenkins應(yīng)用
12.4.1 自由風(fēng)格項目介紹
12.4.2 Jenkins Pipeline
12.5 完整的Jenkins自動化實例
12.6 項目部署
12.6.1 獲取當(dāng)前環(huán)境模塊列表
12.6.2 安裝項目移植所需的模塊
第13章 Docker容器技術(shù)與多線程測試
13.1 Docker簡介
13.2 Docker的一般應(yīng)用場景
13.3 Docker的安裝和簡單測試
13.3.1 Docker的安裝
13.3.2 Docker的簡單測試
13.4 Python多線程介紹
13.4.1 一般方式實現(xiàn)多線程
13.4.2 用可調(diào)用類作為參數(shù)實例化Thread類
13.4.3 Thread類派生子類(重寫run方法)
13.5 使用Docker容器技術(shù)進(jìn)行多線程測試
13.5.1 Selenium Grid
13.5.2 安裝需要的鏡像
13.5.3 啟動Selenium Hub
13.5.4 啟動Selenium Node
13.5.5 查看Selenium Grid Console界面
13.5.6 Docker環(huán)境下多線程并發(fā)執(zhí)行Selenium Grid測試
查看全部↓