Selenium WebDriver 3.0 自動化測試框架實戰指南

Selenium WebDriver 3.0 自動化測試框架實戰指南

作者: 吳曉華 王晨昕
出版社: 清華大學出版社有限公司
出版在: 2017-10-14
ISBN-13: 9787302483175
ISBN-10: 7302483175
裝訂格式: 平裝
總頁數: 410 頁





內容描述


本書以分享Selenium WebDriver實戰經驗為要,致力於為Tester講解開源的Web自動化測試工具的原理、api接口實例、unittest、五大框架實戰(行為驅動、分佈式測試框架、數據驅動測試框架、關鍵詞驅動測試框架、混合模式測試框架)以及自動化測試中常見的問題處理。 本書既可讓初學者從入門到精通,循序漸進; 也可幫中高級Tester夯實技能,從形象到抽象,提供測試思想中更多的可能性。


目錄大綱


第一篇基礎篇
第1章Selenium簡介
1.1Selenium的前世今生
1.2Selenium工具套件介紹
1.3Selenium支持的瀏覽器和平台
1.3.1Selenium IDE、Selenium 1和Selenium RC支持的瀏覽器和平台
1.3.2Selenium 2( WebDriver)支持的瀏覽器
1.4Selenium RC和WebDriver的實現原理
1.4.1Selenium RC的實現原理
1.4.2WebDriver的實現原理
1.4.3Selenium 1.0和WebDriver的特點
1.5Selenium 3的新特性
第2章自動化測試那點事兒
2.1自動化測試目標
2.2管理層的支持
2.3投入產出比
2.4敏捷開發中的自動化測試應用
2.5自動化測試人員分工
2.6自動化測試工具的選擇和推廣使用
2.6.1自動化測試工具的選擇
2.6.2Selenium WebDriver和QTP工具的特點比較
2.7在項目中實施自動化的最佳實踐
2.8學習Selenium工具的能力要求
第3章自動化測試輔助工具
3.1安裝Firefox瀏覽器
3.2安裝Firebug插件
3.3Firebug插件的使用
3.3.1啟動Firebug插件
3.3.2Firebug插件的常用功能
3.4安裝FirePath插件
3.5FirePath插件的使用
3.5.1FirePath插件中使用XPath定位方式
3.5.2FirePath插件中使用CSS定位方式
3.6 IE瀏覽器自帶的輔助開發工具
第4章Selenium IDE 
4.1Selenium IDE的定義
4.2安裝Selenium IDE 
4.2.1從Selenium官網安裝
4.2.2使用離線XPI安裝文件安裝
4.3Selenium IDE插件界面和功能介紹
4.3.1主界面
4.3.2常用工具欄
4.3.3腳本編輯區域
4.4常用菜單項
4.4.1“文件”菜單
4.4.2“編輯”菜單
4.4.3Actions菜單
4.4.4Option菜單
4.5錄製和回放腳本實例
4.6Selenium IDE腳本介紹——Selenese 
4.7Selenium IDE的基本命令使用實例
4.7.1waitForText、verifyText和assertText命令
4.7.2storeTitle命令和echo命令
4.7.3openWindow命令和selectWindow命令
4.8從Selenium IDE導出腳本
4.8.1導出腳本文件
4.8.2將Selenium IDE插件中的某行命令導出為Python腳本
第5章搭建Python環境和PyCharm集成開發環境
5.1安裝Python並配置Python環境
5.1.1下載並安裝Python解釋器
5.1.2配置Python環境
5.1.3安裝pip 
5.2安裝Python集成開發環境PyCharm 
5.3新建一個Python工程
第6章Selenium3(WebDriver)的安裝
6.1在Python中安裝WebDriver 
6.2第一個WebDriver腳本
6.3各瀏覽器驅動的使用方法
第7章單元測試框架的使用介紹
7.1單元測試的定義
7.2unittest單元測試框架
7.2.1unittest的定義
7.2.2unittest框架的4個重要概念
7.2.3單元測試加載方法
7.2.4測試用例
7.2.5測試集合
7.2.6按照特定順序執行測試用例
7.2.7忽略某個測試方法
7.2.8命令行模式執行測試用例
7.2.9批量執行測試模塊
7.2.10常用的斷言方法
7.2.11使用HTMLTestRunner生成HTML測試報告
7.3在unittest中運行第一個WebDriver測試用例
第8章頁面元素定位方法
8.1定位頁面元素方法彙總
8.2使用ID定位
8.3使用name定位
8.4使用鏈接的全部文字定位
8.5使用部分鏈接文字定位
8.6使用HTML標籤名定位
8.7使用Class名稱定位
8.8使用XPath定位
8.8.1XPath的定義
8.8.2XPath節點
8.8.3XPath定位語法
8.8.4XPath運算符
8.9CSS定位8.9.1CSS的概念
8.9.2CSS定位語法
8.9.3XPath定位與CSS定位的比較
8.10表格的定位8.10.1遍歷表格所有的單元格
8.10.2定位表格中的某個元素
8.10.3定位表格中的子元素
第二篇實戰應用篇
第9章WebDriver的多瀏覽器測試
9.1使用IE瀏覽器進行測試
9.2使用Firefox瀏覽器進行測試
9.3使用Chrome瀏覽器進行測試
第10章WebDriver API詳解
10.1訪問某個網址
10.2網頁的前進和後退
10.3刷新當前網頁
10.4瀏覽器窗口最大化
10.5獲取並設置當前窗口的位置10.6獲取並設置當前窗口的大小
10.7獲取頁面的Title屬性值
10.8獲取頁面HTML源代碼
10.9獲取當前頁面的URL地址
10.10獲取與切換瀏覽器窗口句柄
10.11獲取頁面元素的基本信息
10.12獲取頁面元素的文本內容
10.13判斷頁面元素是否可見
10.14判斷頁面元素是否可操作
10.15獲取頁面元素的屬性
10.16獲取頁面元素的CSS屬性值
10.17清空輸入框中的內容
10.18在輸入框中輸入指定內容
10.19單擊按鈕
10.20雙擊某個元素
10.21操作單選下拉列表
10.21.1遍歷所有選項並打印選項顯示的文本和選項值
10.21.2選擇下拉列表元素的三種方法
10.22斷言單選列表選項值
10.23操作多選的選擇列表
10.24操作可以輸入的下拉列表(輸入的同時模擬按鍵)
10.25操作單選框
10.26操作複選框
10.27斷言頁面源碼中的關鍵字
10.28對當前瀏覽器窗口截屏
10.29拖拽 面元素
10.30模擬鍵盤單個按鍵操作
10.31模擬組合按鍵操作
10.31.1通過WebDriver內建的模塊模擬組合鍵
10.31.2通過第三方模塊模擬組合按鍵
10.31.3通過設置剪貼板實現複製和粘貼
10.32模擬鼠標右鍵
10.33模擬鼠標左鍵按下與釋放
10.34保持鼠標懸停在某個元素上
10.35判斷頁面元素是否存在
10.36隱式等待
10.37顯式等待
10.38顯式等待中期望的場景
10.39使用Title屬性識別和操作新彈出的瀏覽器窗口
10.40通過頁面的關鍵內容識別和操作新瀏覽器窗口
10.41操作Frame中的頁面元素
10.42使用Frame中的HTML源碼內容操作Frame 
10.43操作IFrame中的頁面元素
10.44操作JavaScript的Alert彈窗
10.45操作JavaScript的confirm彈窗
10.46操作JavaScript的prompt彈窗
10.47操作瀏覽器的Cookie 
10.48指定頁面加載時間
第11章WebDriver高級應用
11.1使用JavaScript操作頁面元素
11.2操作Web頁面的滾動條
11.3在Ajax方式產生的浮動框中,單擊選擇包含某個關鍵字的選項
11.4結束Windows中 覽器的進程
11.5更改一個頁面對象的屬性值
11.6無人工干預地自動下載某個文件
11.7無人工干預地自動上傳附件
11.7.1使用WebDriver的send_keys方法上傳文件
11.7.2模擬鍵盤操作,實現上傳文件
11.7.3使用第三方工具AutoIt上傳文件
11.8右鍵另存為下載文件
11.9操作日期控件
11.10啟動帶有用戶配置信息的Firefox瀏覽器窗口
11.11UI對像庫
11.12操作富文本框
11.13精確比較頁面截圖圖片
11.14高亮顯示正在操作的頁面元素
11.15瀏覽器中新開標籤頁(Tab)
11.16測試過程中發生異常或斷言失敗時進行屏幕截圖
11.17使用日誌模塊記錄測試過程中的信息
11.18封裝操作表格的公用類
11.19測試HTML5語言實現的視頻播放器
11.20在HTML5的畫布元素上進行繪畫操作
11.21操作HTML5存儲對象
11.22使用Chrome瀏覽器自動將文件下載到指定路徑
11.23修改Chrome設置偽裝成手機M站
11.24屏蔽Chrome的ignorecertificateerrors提示及禁用擴展 件並實現
窗口最大化
11.25禁用Chrome瀏覽器的PDF和Flash插件
11.26禁用IE的保護模式
11.27啟動Firefox的同時打開Firebug 
11.28禁用Chrome瀏覽器中的Image加載
11.29禁用Firefox瀏覽器中的CSS、Flash及Image加載
第三篇自動化測試框架搭建篇
第12章數據驅動測試
12.1數據驅動概述
12.2數據驅動單元測試的環境準備
12.3使用unittest和ddt進行數據驅動
12.4使用數據文件進行數據驅動
12.5使用Excel進行數據驅動測試
12.6使用XML進行數據驅動測試
12.7使用MySQL數據庫進行數據驅動測試
第13章行為驅動測試
13.1行為驅動開發和lettuce簡介
13.2行為驅動測試的環境準備
13.3第一個英文語言行為驅動測試
13.4通過類模式實現英文行為驅動
13.5lettuce框架的步驟數據表格
13.6使用WebDriver進行英文語言的行為數據驅動測試
13.7使用WebDriver進行中文語言的行為數據驅動測試
13.8批量執行行為驅動用例集
13.9解決中文描述的場景輸出到控制台亂碼
第14章Selenium Grid的使用
14.1Selenium Grid簡介
14.2分佈式自動化 試環境準備
14.3Selenium Grid的使用方法
14.3.1遠程調用Firefox瀏覽器進行自動化測試
14.3.2遠程調用IE瀏覽器進行自動化測試
14.3.3遠程調用Chrome瀏覽器進行自動化測試
14.3.4同時支持多個瀏覽器進行自動化測試
14.4結合unittest完成分佈式自動化測試
14.5實現並發的分佈式自動化測試
第15章自動化測試框架的搭建及測試實戰
15.1自動化測試框架
15.2數據驅動框架及實戰
15.3關鍵字驅動框架及實戰
15.4關鍵字&&數據混合驅動框架及實戰
第四篇常見問題和解決方法
第16章自動化測試常見問題和解決方法
16.1如何讓WebDriver支持IE 11 
16.2解決“Unexpected error launching Internet Explorer. Browserzoom 
level was set to 75%(或其他百分比)”的錯誤
16.3解決某些IE瀏覽器中輸入數字和英文特別慢的問題
16.4解決Firefox瀏覽器的cant access dead object異常
16.5常見異常和解決方法


作者介紹


吳曉華,軟件測試界的一個老兵,光榮之路軟件測試開發免費公開課創始人,從事軟件測試工作13年,熱衷於傳遞軟件測試行業的最佳實踐經驗,曾任職於搜狐公司、搜狗公司、Tom在線等知名企業。自光榮之路軟件測試開發免費公開課創立以來,聽眾數万人,公開課視頻下載數十萬次,受到廣大測試從業人員的好評;王晨昕,某大型互聯網高級測試開發,多年的測試開發經驗,喜歡專研各種測試開發技術,並熱衷於分享這些技術。




相關書籍

API Testing and Development with Postman: A practical guide to creating, testing, and managing APIs for automated software testing

作者 Westerveld Dave

2017-10-14

SeleniumWebDriver3實戰寶典(Java版)

作者 吳曉華 俞美玲

2017-10-14

Fundamentals of Software Testing (ISTE) (Hardcover)

作者 Bernard Homès

2017-10-14