Selenium 3 自動化測試 — 從 Python 基礎到框架封裝實戰 (微課視頻版)
慄任龍
買這商品的人也買了...
-
$620$527 -
$380$342 -
$1,260The Book of Dash: Build Dashboards with Python and Plotly (Paperback)
-
$534$507 -
$720$569
相關主題
商品描述
本書以Python+Selenium+Unittest為基礎,結合PageObject設計模式,通過測試作者自研項目逐步搭建UI自動化測試框架。Python是測試在開發過程中使用最多的語言,Selenium是當前***的Web UI自動化測試工具,這套Python+Selenium+Unittest+PageObject結合的測試框架可以直接應用到實際工作當中。 本書共14章,其中第1~6章講述了Python基礎、前端基礎和Selenium的基礎。第7~12章結合分層思想對Selenium Webdriver做了多達6次的封裝和優化,目的是讓框架結構更加清晰、使用起來更加方便,同時也能讓讀者對封裝有更深一層的理解。第13~14章筆者介紹了Gitee代碼管理和Jenkins持續集成,其中Gitee實現了代碼托管、Jenkins實現了代碼的自動構建。讀者可以根據實際工作情況在每天特定的時間自動運行UI自動化腳本,確保公司系統功能的穩定性。另外,本書重點內容配有視頻講解,可以讓讀者更加容易理解和實操。 本書既適合UI自動化測試的初學者,也可以給具有多年測試開發經驗的人員提供參考,還可以作為高等院校、培訓機構相關專業的教學參考。
目錄大綱
目錄
本書源代碼
第1章自動化測試簡介
1.1什麽是自動化測試
1.2UI自動化測試應用場景
1.3UI自動化測試工具及框架
1.4本章總結
第2章Windows系統下環境搭建(8min)
2.1Python安裝
2.2PyCharm安裝
2.3PyCharm新建工程
2.4Python第1行代碼
2.5本章總結
第3章Python基礎(211min)
3.1Python命名規則
3.2Python註釋
3.3Python變量和數據類型
3.3.1常用變量定義
3.3.2變量數據類型分類
3.4Python運算符
3.4.1算術運算符
3.4.2比較運算符
3.4.3邏輯運算符
3.4.4成員運算符
3.4.5身份運算符
3.5Python字符串
3.5.1字符串定義
3.5.2字符串拼接
3.5.3字符串分割
3.5.4字符串替換
3.5.5字符串刪除前後空格
3.5.6字符串大小寫
3.6Python元組
3.6.1元組定義
3.6.2元組訪問
3.6.3元組遍歷
3.6.4字符串切片
3.7Python列表
3.7.1列表定義及訪問
3.7.2列表增、刪、改操作
3.7.3列表遍歷
3.8Python集合
3.8.1集合定義及訪問
3.8.2集合應用
3.8.3元組列表集合的區別
3.9Python字典
3.9.1字典定義
3.9.2字典訪問
3.9.3字典增、刪、改操作
3.9.4字典遍歷
3.10Python分支和循環
3.10.1分支
3.10.2循環
3.10.3分支循環綜合應用
3.11Python方法
3.11.1Python方法簡介
3.11.2Python程序入口
3.11.3Python模塊導入
3.11.4無參數無返回值方法
3.11.5有位置參數和一個返回的方法
3.11.6有多個返回的方法
3.11.7默認值參數方法
3.11.8可變參數方法
3.11.9關鍵字參數方法
3.11.10參數的混合使用
3.12Python類
3.12.1類的定義
3.12.2類的構造方法
3.12.3類的繼承
3.12.4類的方法重寫
3.12.5類的多繼承
3.13Python模塊包安裝
3.13.1pip安裝簡介
3.13.2PyCharm命令行安裝模塊包
3.13.3PyCharm圖形化安裝模塊包
3.14Python的異常
3.14.1Python異常捕獲
3.14.2Excel操作及異常捕獲
3.15裝飾器
3.15.1不使用裝飾器
3.15.2無參裝飾器
3.15.3有參裝飾器
3.16Python多線程
3.16.1創建線程
3.16.2join()方法
3.16.3線程方法傳參
3.16.4創建多個線程
3.17本章總結
第4章前端基礎(17min)
4.1HTML標簽及屬性
4.2測試項目介紹
4.2.1ElementUI介紹
4.2.2測試項目介紹
4.3本章總結
第5章Selenium WebDriver基礎(43min)
5.1Selenium簡介
5.1.1Selenium測試準備
5.1.2Selenium工具介紹
5.1.3Selenium WebDriver原理
5.1.4Selenium Grid原理
5.2WebDriver瀏覽器操作
5.2.1啟動瀏覽器
5.2.2導航到網頁
5.2.3最大化瀏覽器
5.2.4關閉瀏覽器
5.2.5總結
5.3WebDriver元素定位
5.3.1開發者工具
5.3.2id屬性定位
5.3.3name屬性定位
5.3.4class屬性定位
5.3.5CSS選擇器定位
5.3.6link text定位
5.3.7partial link text定位
5.3.8tag name定位
5.3.9xpath表達式定位
5.3.10By模塊定位
5.3.11定位多個元素
5.3.12XPath插件
5.4WebDriver基本操作
5.4.1輸入操作
5.4.2單擊操作
5.4.3下拉列表操作
5.4.4文件上傳操作
5.4.5ActionChains操作
5.4.6懸停操作
5.4.7窗口切換操作
5.4.8iframe切換操作
5.4.9JavaScript彈框操作
5.4.10JavaScript操作
5.4.11獲取屬性值與斷言
5.4.12下載文件操作
5.5WebDriver元素等待
5.5.1強制等待
5.5.2隱式等待
5.5.3顯式等待
5.6WebDriver鼠標操作
5.7WebDriver鍵盤操作
5.8本章總結
第6章Selenium WebDriver實戰(91min)
6.1登錄實戰
6.1.1登錄代碼分析
6.1.2登錄代碼實戰
6.2新增用戶實戰
6.2.1菜單欄代碼分析
6.2.2新增按鈕代碼分析
6.2.3新增用戶代碼分析
6.2.4新增用戶代碼實戰
6.3查詢用戶實戰
6.3.1查詢用戶代碼分析
6.3.2查詢用戶代碼實戰
6.4修改用戶實戰
6.4.1修改用戶代碼分析
6.4.2修改用戶代碼實戰
6.5刪除用戶實戰
6.5.1刪除用戶代碼分析
6.5.2刪除用戶代碼實戰
6.6窗口操作實戰
6.6.1窗口代碼分析
6.6.2窗口代碼實戰
6.7上傳文件實戰
6.7.1上傳文件代碼分析
6.7.2上傳文件代碼實戰
6.8本章總結
第7章關鍵字驅動封裝(15min)
7.1初始化封裝
7.1.1單瀏覽器封裝
7.1.2多瀏覽器封裝
7.2等待封裝
7.2.1等待代碼回顧
7.2.2等待代碼封裝
7.3基礎操作封裝
7.3.1登錄代碼回顧
7.3.2基礎操作封裝
7.4iframe切換封裝
7.4.1iframe代碼回顧
7.4.2iframe代碼封裝
7.5窗口切換封裝
7.5.1窗口切換代碼回顧
7.5.2窗口切換代碼封裝
7.6懸停操作封裝
7.6.1懸停代碼回顧
7.6.2懸停代碼封裝
7.7獲取元素文本封裝
7.7.1獲取文本代碼回顧
7.7.2獲取文本代碼封裝
7.8斷言封裝
7.8.1斷言代碼回顧
7.8.2斷言代碼封裝
7.9關閉窗口封裝
7.9.1關閉窗口代碼回顧
7.9.2關閉窗口代碼封裝
7.10異常捕獲
7.10.1頁面跳轉異常
7.10.2頁面跳轉異常捕獲
7.10.3顯式等待異常
7.10.4顯式等待異常捕獲
7.11本章總結
第8章PageObject封裝(8min)
8.1PageObject模式簡介
8.2登錄PO封裝
8.2.1登錄代碼回顧
8.2.2登錄封裝
8.2.3登錄校驗
8.3賬號管理PO封裝
8.3.1進入賬號管理頁面封裝
8.3.2新增用戶封裝
8.3.3查詢用戶封裝
8.3.4編輯用戶封裝
8.3.5刪除用戶封裝
8.4外鏈測試PO封裝
8.4.1外鏈測試封裝
8.4.2外鏈測試封裝的使用
8.5上傳文件PO封裝
8.5.1上傳文件封裝
8.5.2上傳文件封裝的使用
8.6本章總結
第9章Unittest封裝(62min)
9.1Unittest基礎
9.2計算器單元測試
9.2.1開發代碼
9.2.2單元測試代碼
9.3Unittest詳解
9.3.1TestFixture
9.3.2TestCase
9.3.3TestSuite
9.3.4TestRunner
9.3.5用例執行順序
9.3.6跳過用例
9.3.7斷言
9.4登錄用例封裝
9.4.1登錄用例代碼回顧
9.4.2登錄用例的主要功能
9.4.3登錄用例的執行
9.4.4登錄失敗用例封裝
9.4.5登錄失敗用例的執行
9.5賬號管理用例封裝
9.5.1基於setUp()和tearDown()封裝
9.5.2基於setUpClass()和tearDownClass()封裝
9.6外鏈測試用例封裝
9.6.1準備和還原封裝
9.6.2外鏈查詢用例封裝
9.6.3外鏈查詢用例的執行
9.7上傳文件用例封裝
9.7.1準備和還原封裝
9.7.2上傳文件用例封裝
9.7.3上傳文件用例的執行
9.8本章總結
第10章數據驅動封裝(20min)
10.1數據驅動基礎
10.1.1DDT安裝
10.1.2DDT簡單使用
10.2登錄封裝
10.2.1LoginPage類方法優化
10.2.2LoginCase類用例優化
10.2.3LoginCase類數據驅動
10.3賬號管理封裝
10.3.1數據文件準備
10.3.2UserManageCase類數據驅動
10.3.3UserManagePage類優化
10.4外鏈測試封裝
10.4.1數據文件準備
10.4.2IframeCase類數據驅動
10.5文件上傳封裝
10.5.1數據文件準備
10.5.2UploadFileCase類數據驅動
10.6本章總結
第11章測試框架封裝優化(16min)
11.1BaseCase封裝
11.1.1setUp()回顧
11.1.2setUp()封裝
11.1.3setUp()封裝使用
11.1.4setUpClass()回顧
11.1.5setUpClass()封裝
11.1.6setUpClass()封裝使用
11.2配置文件
11.2.1配置文件基礎
11.2.2BaseCase類配置文件
11.2.3configparser模塊獲取配置文件
11.2.4configparser模塊封裝
11.2.5BaseCase類優化
11.3Log封裝
11.3.1Logging模塊簡介
11.3.2Logging模塊的使用
11.3.3Logging配置文件
11.3.4Logger封裝
11.3.5Logger封裝的使用
11.4HTMLTestRunnerCN報告
11.4.1HTMLTestRunnerCN下載
11.4.2HTMLTestRunnerCN的使用
11.5Yagmail發送郵件
11.5.1Yagmail簡介
11.5.2Yagmail封裝
11.6報告和郵件整合
11.6.1報告和郵件整合封裝
11.6.2報告和郵件整合封裝應用
11.7Unittestreport基礎
11.7.1執行用例生成報告
11.7.2失敗用例重試
11.7.3並發執行用例
11.7.4發送郵件
11.7.5發送釘釘群消息
11.8Unittestreport封裝
11.9本章總結
第12章Selenium Grid實戰
12.1Java環境搭建
12.1.1Java簡介
12.1.2JDK安裝
12.1.3環境變量設置
12.2Grid基礎
12.2.1Grid下載
12.2.2啟動hub
12.2.3啟動node
12.2.4腳本運行
12.2.5多線程
12.3Grid實戰
12.3.1修改run()方法
12.3.2修改BaseCase類
12.3.3修改MyDriver類
12.3.4修改測試用例類
12.3.5Grid實戰總結
12.4本章總結
第13章Gitee代碼管理
13.1Gitee基礎
13.1.1Gitee註冊
13.1.2Gitee配置SSH公鑰
13.1.3Gitee新建倉庫
13.2Git基礎
13.2.1Git下載並安裝
13.2.2Git命令
13.3PyCharm中Git操作
13.3.1PyCharm安裝Gitee插件
13.3.2PyCharm添加Gitee賬號
13.3.3PyCharm創建Git倉庫
13.3.4PyCharm將文件上傳到Gitee
13.4本章總結
第14章Jenkins持續集成
14.1Jenkins安裝
14.2Jenkins工作目錄
14.3Jenkins拉取代碼
14.3.1新建Gitee工程
14.3.2安裝Gitee插件
14.3.3配置Gitee
14.3.4獲取Gitee私人令牌
14.3.5新建Jenkins項目
14.4Jenkins定時構建
14.5Jenkins部署測試框架
14.5.1框架代碼部署分析
14.5.2Jenkins構建命令編寫
14.5.3框架代碼報錯分析
14.6Jenkins遠程部署
14.6.1Windows遠程服務器安裝SSH服務
14.6.2Jenkins安裝SSH插件
14.6.3Jenkins遠程部署
14.7本章總結