《Python自動化測試入門與進階實戰》是2021年機械工業出版社出版的圖書,作者是唐文。
基本介紹
- 中文名:Python自動化測試入門與進階實戰
- 作者:唐文
- 出版時間:2021年3月1日
- 出版社:機械工業出版社
- 頁數:292 頁
- ISBN:9787111674016
- 開本:16 開
- 裝幀:平裝
內容簡介,圖書目錄,作者簡介,
內容簡介
《Python自動化測試入門與進階實戰》從Python自動化測試的概念開始講解,然後逐步深入講解自動化測試的進階知識,最後通過兩個綜合項目案例,重點介紹如何使用unittest+requests+Selenium進行RESTful API和跨終端自動化測試,讓讀者能夠從實踐中學會項目分析,編寫出高質量和高復用性的測試代碼,並全面、系統、深入地掌握Selenium的相關知識。
《Python自動化測試入門與進階實戰》共10章,分為2篇。第1篇“Python自動化測試基礎”,涵蓋的主要內容有自動化測試概述、Python HTTP接口編程、Selenium基礎知識、Python模擬數據測試、Python爬蟲測試接口、性能測試、App自動化測試及pytest單元測試;第2篇“Python自動化測試實戰”,涵蓋的主要內容有基於RESTful API的自動化測試案例,以及基於Selenium的Web自動化測試案例。
《Python自動化測試入門與進階實戰》內容全面,語言通俗易懂,案例豐富,代碼規範,特別適合有一定Python編程基礎而想要學習Python自動化測試技術的人員閱讀,也適合對自動化測試感興趣的相關從業人員和技術愛好者閱讀。另外,本書還可以作為高等院校相關專業的教材及相關培訓機構的教學用書。
圖書目錄
前言
第1篇 Python自動化測試基礎
第1章 自動化測試概述 2
1.1 測試方式分類 2
1.2 自動化測試的概念和優點 4
1.3 為什麼用Python進行自動化測試 5
1.4 接口測試和UI測試的比較 6
1.5 小結 10
第2章 Python HTTP接口編程 11
2.1 發起HTTP請求示例 11
2.1.1 HTTP請求原理解析 11
2.1.2 利用Python發起HTTP請求 13
2.1.3 利用Python處理回響對象 14
2.2 HTTP簡介 14
2.2.1 HTTP狀態碼 15
2.2.2 利用Python處理業務碼 18
2.3 GET和POST請求 19
2.3.1 HTTP請求方式 20
2.3.2 利用Python發起GET請求 20
2.3.3 利用Python發起POST請求 22
2.3.4 利用Python完成自動登錄示例 24
2.4 小結 25
第3章 Selenium基礎知識 26
3.1 Selenium概述 26
3.2 Selenium環境搭建 27
3.2.1 安裝Selenium包 27
3.2.2 安裝不同瀏覽器的驅動包 27
3.3 在Selenium中選擇元素對象 28
3.3.1 根據id和name選擇元素對象 28
3.3.2 根據link text選擇元素對象 29
3.3.3 根據XPath選擇元素對象 29
3.3.4 CSS選擇器 30
3.4 使用Selenium完成自動登錄 33
3.4.1 自動登錄百度網盤 34
3.4.2 自動登錄 空間 36
3.5 滑鼠事件 36
3.6 鍵盤事件 39
3.7 對一組對象定位 40
3.8 對層級對象定位 43
3.9 iframe中的對象定位 46
3.10 調試方法 48
3.11 對話框處理 49
3.12 跨瀏覽器的視窗處理 50
3.13 分頁處理 51
3.14 控制瀏覽器的滾動條 53
3.15 小結 54
第4章 Python模擬數據測試 55
4.1 模擬測試簡介 55
4.1.1 模擬測試的定義和使用場景 55
4.1.2 安裝Mock庫 56
4.1.3 Mock對象簡介 56
4.1.4 簡單用例 57
4.2 測試留言板功能 58
4.2.1 測試新增功能 59
4.2.2 對測試失敗的情況進行處理 62
4.3 Mock庫的GJ用法 63
4.3.1 Patch簡介 63
4.3.2 Patch的簡單用例 63
4.3.3 利用Patch測試購物車類 64
4.4 模擬登錄 68
4.4.1 登錄的完整用例 68
4.4.2 通過面向對象的方式實現登錄 70
4.5 小結 70
第5章 Python爬蟲測試接口 72
5.1 爬蟲測試簡介 72
5.1.1 爬蟲測試的思路和流程 72
5.1.2 urllib庫的使用 73
5.1.3 urllib 3簡介 78
5.1.4 BeautifulSoup的使用 79
5.1.5 使用BeautifulSoup爬取BOSS直聘wz上的信息 82
5.1.6 正則表達式簡介 90
5.1.7 封裝一個強大的爬蟲工具類 93
5.2 Scrapy基礎 94
5.2.1 Scrapy簡介 94
5.2.2 Scrapy的基本用法 96
5.2.3 Scrapy爬蟲實踐 99
5.3 測試商品列表頁面的完整用例 102
5.4 多執行緒爬蟲用例 106
5.5 反爬蟲安全策略 108
5.5.1 tesserocr庫簡介 109
5.5.2 圖片滑塊驗證碼 112
5.5.3 IP限制 115
5.6 小結 116
第6章 性能測試 118
6.1 性能測試簡介 118
6.2 Locust工具的使用 119
6.2.1 環境搭建 120
6.2.2 Locust快速入門 124
6.2.3 Locust和其他工具集成 129
6.3 常用的壓力測試工具 130
6.3.1 輕量級http_load工具的使用 131
6.3.2 webbench工具的使用 132
6.3.3 AB工具的使用 133
6.3.4 利用Python操作AB工具 137
6.4 利用多執行緒實現性能提升 141
6.5 使用JMeter對Selenium自動化代碼進行壓力測試 146
6.6 小結 152
第7章 App自動化測試 154
7.1 App自動化測試簡介 154
7.2 測試計畫設計 157
7.3 Appium自動化測試框架 159
7.3.1 Appium工具簡介 159
7.3.2 環境搭建 160
7.3.3 Android Studio的簡單使用 165
7.3.4 自動化測試手機計算器 169
7.3.5 Appium的常用API 172
7.4 小結 175
第8章 使用pytest進行單元測試 176
8.1 單元測試簡介 176
8.1.1 單元測試的重要性 177
8.1.2 單元測試框架簡介 178
8.1.3 安裝pytest 179
8.1.4 pytest的簡單用例 180
8.2 pytest的基本用法 189
8.2.1 斷言 190
8.2.2 異常處理 192
8.2.3 執行測試和參數設定 193
8.2.4 對測試結果進行分析和處理 198
8.3 pytest進階之conftest的使用 202
8.4 其他單元測試框架 206
8.5 小結 208
第2篇 Python自動化測試實戰
第9章 基於RESTful API的自動化測試案例 210
9.1 RESTful API簡介 210
9.2 接口分析 211
9.3 編寫配置 214
9.4 數據準備 221
9.5 新增文章接口測試代碼用例 222
9.6 修改文章接口測試代碼用例 225
9.7 刪除文章接口測試代碼用例 226
9.8 查詢文章接口測試代碼用例 227
9.9 API測試工具 229
9.9.1 Tavern簡介 229
9.9.2 Tavern的基本用法 229
9.9.3 使用Tavern測試文章的所有接口 231
9.10 小結 232
第10章 基於Selenium的Web自動化測試案例 233
10.1 自研自動化測試框架 233
10.2 使用Selenium自動化操作網盤 242
10.2.1 基本操作封裝 242
10.2.2 傳送通知郵件 247
10.3 使用Lettuce進行測試 250
10.3.1 T第第和B第第簡介 251
10.3.2 使用pytest-bdd進行測試 252
10.3.3 Lettuce初體驗 255
10.3.4 編寫Lettuce程式 258
10.3.5 Aloe的使用 260
10.4 Selenium跨瀏覽器測試實戰 262
10.4.1 Selenium Server的安裝 262
10.4.2 Selenium數據驅動測試 267
10.4.3 poium測試庫 274
10.4.4 pyautoTest Web UI自動化項目 275
10.5 小結 277
作者簡介
唐文 慧博雲通成都分公司高級研發工程師。熱愛技術類文章的寫作及開源技術的傳播,運營與維護技術公眾號“成都有娃兒”和cnblogs部落格。曾在上市公司聚美優品和邊鋒領沃從事研發工作,也曾在創業公司擔任架構師和研發主管。熱衷於新興技術,崇尚開源和全棧開發,熟悉PHP、Python、Golang和Java等後端技術棧,對自動化測試有較為深入的研究,並且積累了豐富的實踐經驗。