Selenium WebDriver3.0 自動化測試框架實戰教程

吳曉華、王晨昕

  • 出版商: 清華大學
  • 出版日期: 2022-08-01
  • 定價: $594
  • 售價: 8.5$505
  • 語言: 簡體中文
  • ISBN: 7302612447
  • ISBN-13: 9787302612445
  • 相關分類: selenium
  • 立即出貨 (庫存 < 4)

  • Selenium WebDriver3.0 自動化測試框架實戰教程-preview-1
  • Selenium WebDriver3.0 自動化測試框架實戰教程-preview-2
  • Selenium WebDriver3.0 自動化測試框架實戰教程-preview-3
Selenium WebDriver3.0 自動化測試框架實戰教程-preview-1

買這商品的人也買了...

商品描述

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

目錄大綱

目錄

 

 

第一篇基礎篇

 

第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和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.2.1打開工具箱

 

3.2.2定位頁面元素的HTML代碼

 

3.3使用定位頁面元素的Firefox瀏覽器插件

 

3.3.1安裝Firebug元素定位插件

 

3.3.2使用RutoXPath Finder進行頁面元素定位

 

3.3.3使用XPath Finder插件進行頁面元素定位

 

3.4IE瀏覽器自帶的輔助開發工具

 

3.5Chrome瀏覽器自帶的輔助開發工具

 

 

 

 

 

第4章搭建Python 3環境和PyCharm集成開發環境

 

4.1安裝和配置Python 3環境

 

4.1.1下載並安裝Python 3解釋器

 

4.1.2配置Python 3環境

 

4.1.3安裝pip

 

4.2安裝Python集成開發環境PyCharm

 

4.3新建一個Python工程

 

第5章Selenium 3(WebDriver)的安裝

 

5.1在Python中安裝WebDriver

 

5.2第一個WebDriver腳本

 

5.3各瀏覽器驅動的使用方法

 

第6章pytest單元測試框架

 

6.1單元測試的定義

 

6.2pytest單元測試框架

 

6.3安裝pytest測試框架

 

6.4pytest用例編寫規則

 

6.5pytest單元測試框架初體驗

 

6.6如何執行pytest測試用例

 

6.7setup和teardown函數

 

6.8失敗重試

 

6.9控制測試函數運行順序

 

6.10生成HTML測試報告

 

6.11通過配置文件配置要執行的測試用例

 

6.12捕獲異常

 

6.13標記函數

 

6.13.1過濾測試函數

 

6.13.2跳過測試

 

6.13.3預期失敗

 

6.13.4參數化

 

6.13.5超時時間

 

6.13.6失敗重跑

 

6.13.7自定義標記

 

6.14固件

 

6.14.1作為參數引用

 

6.14.2作為函數引用

 

6.14.3設置自動使用fixture

 

6.14.4設置作用域為function

 

6.14.5設置作用域為class

 

6.14.6設置作用域為module

 

6.14.7設置作用域為session

 

6.14.8使用fixture返回值

 

6.14.9參數化

 

6.14.10yield與addfinalizer

 

第7章unittest單元測試框架

 

7.1關於unittest

 

7.2unittest框架四個重要概念

 

7.3單元測試加載方法

 

7.4測試用例

 

7.5測試集合

 

7.6按照特定順序執行測試用例

 

7.7忽略某個測試方法

 

7.8命令行模式執行測試用例(x)

 

7.9批量執行測試模塊

 

7.10常用的斷言方法

 

7.11在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.1關於XPath

 

8.8.2XPath節點

 

8.8.3XPath定位語法

 

8.8.4XPath運算符

 

8.9CSS定位

 

8.9.1關於CSS

 

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(x)

 

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瀏覽器中新開標簽頁

 

11.16測試過程中發生異常或斷言失敗時進行屏幕截圖

 

11.17使用日誌模塊記錄測試過程中的信息

 

11.18封裝操作表格的公用類

 

11.19測試HTML5語言實現的視頻播放器

 

11.20在HTML5的畫布元素上進行繪畫操作

 

11.21操作HTML5存儲對象

 

11.22使用Chrome瀏覽器自動將文件下載到指定路徑

 

11.23使用Firefox瀏覽器自動下載文件到指定路徑

 

11.24修改Chrome設置偽裝成手機M站

 

11.25將Firefox瀏覽器偽裝成手機M站

 

11.26屏蔽Chrome的ignorecertificateerrors提示及禁用擴展插件並實現

窗口最大化

 

11.27禁用Chrome瀏覽器的PDF和Flash插件

 

11.28禁用IE的保護模式

 

11.29禁用Chrome瀏覽器中的Image加載

 

11.30禁用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結合uittest完成分佈式自動化測試

 

14.5實現並發的分佈式自動化測試

 

第15章自動化測試框架的搭建及實戰

 

15.1關於自動化測試框架

 

15.2數據驅動框架及實戰

 

15.3關鍵字驅動框架及實戰

 

15.4關鍵字&數據混合驅動框架及實戰

 

第四篇常見問題和解決方法

 

第16章自動化測試常見問題和解決方法

 

16.1如何讓WebDriver支持IE 11

 

16.2解決Unexpected error launching Internet Explorer.Browser zoom 

level was set to 75%(或其他百分比)的錯誤

 

16.3解決某些IE瀏覽器中輸入數字和英文特別慢的問題

 

16.4解決Firefox瀏覽器的cant access dead object異常

 

16.5常見異常和解決方法