本書的寫作初衷是為了幫助更多功能測試人員轉(zhuǎn)型自動化測試方向。在轉(zhuǎn)型過程中,主流自動化測試技術(shù)和應(yīng)用場景的結(jié)合是非常重要的一環(huán)。本書從自動化測試?yán)碚撊胧,全面地闡述自動化測試的意義及實施過程。全文以Python語言驅(qū)動,結(jié)合真實案例分別對主流自動化測試工具Selenium、RobotFramework、Postman、Python+Requests、Appium等進(jìn)行系統(tǒng)講解。通過學(xué)習(xí)本書,讀者可以快速掌握主流自動化測試技術(shù),并幫助讀者豐富測試思維,提高Python編碼能力。
本書實用性強(qiáng),不僅是轉(zhuǎn)型自動化測試方向的一本案頭書,也是一本特別好用、實用的操練手冊。
鹿瑞峰,高級測試工程師,曾供職于華為、順豐等互聯(lián)網(wǎng)公司,擔(dān)任測試經(jīng)理、高級測試工程師等職務(wù)。博客園分享原創(chuàng)文章超過300篇,同時創(chuàng)建了“IT測試?yán)媳蔽⑿殴娞枺瑢W⒎窒碛嘘P(guān)自動化測試技術(shù)的相關(guān)內(nèi)容。
第1章 自動化測試?yán)碚?
1.1 自動化測試現(xiàn)狀 2
1.2 自動化測試的定義 2
1.3 自動化測試流程 3
1.4 自動化測試用例編寫 4
第2章 Selenium 3自動化測試實戰(zhàn)
2.1 搭建自動化環(huán)境 6
2.2 配置瀏覽器驅(qū)動 9
2.3 元素定位實戰(zhàn) 12
2.4 下拉框?qū)崙?zhàn) 19
2.5 鼠標(biāo)操作實戰(zhàn) 22
2.6 元素等待實戰(zhàn) 24
2.7 表單切換實戰(zhàn) 25
2.8 窗口切換實戰(zhàn) 28
2.9 警告框?qū)崙?zhàn) 30
2.10 JavaScript實戰(zhàn) 32
2.11 unittest單元測試框架 36
2.12 數(shù)據(jù)驅(qū)動測試實戰(zhàn) 42
2.13 發(fā)送郵件實戰(zhàn) 53
2.14 自動化測試封裝實戰(zhàn) 58
2.15 測試框架封裝和腳本的分層設(shè)計 62
2.16 自動化測試擴(kuò)展應(yīng)用實戰(zhàn) 90
第3章 Robot Framework自動化測試實戰(zhàn)
3.1 搭建Robot Framework環(huán)境 98
3.2 安裝與導(dǎo)入Selenium2Library庫 101
3.3 瀏覽器驅(qū)動配置 103
3.4 元素定位實戰(zhàn) 105
3.5 JQuery定位實戰(zhàn) 110
3.6 獲取窗口標(biāo)題 115
3.7 獲取文本信息 116
3.8 鼠標(biāo)指針懸停實戰(zhàn) 116
3.9 操作多窗口實戰(zhàn) 117
3.10 操作下拉列表框?qū)崙?zhàn) 119
3.11 操作警告框?qū)崙?zhàn) 120
3.12 獲取結(jié)果斷言 120
3.13 項目執(zhí)行順序 123
3.14 常見問題整理 124
3.15 自定義關(guān)鍵字 125
3.16 參數(shù)化關(guān)鍵字 127
3.17 關(guān)鍵字驅(qū)動測試 129
3.18 Settings界面簡介 130
3.19 項目分層設(shè)計與開發(fā)實戰(zhàn) 130
3.20 連接MySQL數(shù)據(jù)庫實戰(zhàn) 133
3.21 Jenkins+Robot Framework持續(xù)集成 139
第4章 接口測試基礎(chǔ)
4.1 接口測試的定義 142
4.2 接口測試的目的 142
4.3 接口測試原理 143
4.4 接口測試流程 143
4.5 接口測試用例設(shè)計 144
4.6 HTTP基礎(chǔ) 145
4.7 Cookie和Session 148
第5章 Charles抓包工具實戰(zhàn)
5.1 下載與安裝Charles 151
5.2 計算機(jī)端抓包設(shè)置 151
5.3 手機(jī)端抓包設(shè)置 155
5.4 Charles過濾請求 157
5.5 Charles常見問題 158
第6章 Postman接口測試高級實戰(zhàn)
6.1 安裝Postman 160
6.2 Collections簡介 160
6.3 基于HTTP接口實戰(zhàn) 161
6.4 基于Web Services接口實戰(zhàn) 168
第7章 Python接口自動化測試實戰(zhàn)
7.1 安裝Requests庫 182
7.2 Requests發(fā)送請求與參數(shù)傳遞 183
7.3 處理Token 187
7.4 處理Cookie 189
7.5 處理Session 190
7.6 處理超時等待 193
7.7 Response對象解析 194
7.8 Requests文件上傳實戰(zhàn) 195
7.9 Requests常見異常 197
7.10 序列化和反序列化 197
7.11 XML與JSON數(shù)據(jù)之間的轉(zhuǎn)換 199
7.12 接口測試框架設(shè)計和開發(fā) 201
第8章 Robot Framework接口自動化實戰(zhàn)
8.1 Collections庫案例實戰(zhàn) 217
8.2 ExcelLibrary庫案例應(yīng)用 221
8.3 RequestsLibrary庫案例實戰(zhàn) 225
8.4 ExcelLibrary庫數(shù)據(jù)管理案例實戰(zhàn) 228
第9章 Appium自動化測試實戰(zhàn)
9.1 安裝Appium環(huán)境 234
9.2 使用Monitor定位元素 244
9.3 Native App實戰(zhàn) 250
9.4 Appium完整腳本實戰(zhàn) 257
9.5 Appium常見問題 262
第10章 Git版本控制工具實戰(zhàn)
10.1 搭建Git環(huán)境 265
10.2 Git基本操作 267
10.3 Git項目管理 274