本書主要包括兩部分內(nèi)容,第一部分重點(diǎn)介紹Python 的基礎(chǔ)知識(shí),讓讀者可以從零開始入門Python Web 開發(fā)測試;第二部分重點(diǎn)介紹Python Web 項(xiàng)目的開發(fā)實(shí)踐,讓讀者可以一步一步地了解開發(fā)一個(gè)Python Web 項(xiàng)目的過程。
本書是一本介紹Python Web 測試開發(fā)的基礎(chǔ)書,從最基礎(chǔ)的Python 概念、Python 語法,到最后的Python Web 的項(xiàng)目實(shí)踐,囊括Python Web 測試開發(fā)所需的基礎(chǔ)知識(shí)和實(shí)踐方法,非常適合準(zhǔn)備轉(zhuǎn)型PythonWeb 測試開發(fā)的人員。
同時(shí),本書也介紹了Python 語言的一些高級(jí)特性,如語法糖、內(nèi)置表達(dá)式、魔法屬性等。因此本書也是一本Python 進(jìn)階教程,適合那些已經(jīng)掌握一定的Python 基礎(chǔ)知識(shí)、希望提升Python 編程能力的讀者。
最后,本書一以貫之地以實(shí)踐為主旨,除了介紹Python 語法知識(shí)之外,更多地關(guān)注Python 語言的實(shí)踐。例如,第一部分會(huì)提供一些練習(xí)題,還會(huì)有專門的章節(jié)來介紹如何學(xué)習(xí)和使用Python 的類庫;而第二部分則重點(diǎn)介紹實(shí)踐項(xiàng)目。所以本書也很適合那些掌握了Python 知識(shí)卻沒有Python Web 項(xiàng)目實(shí)踐經(jīng)驗(yàn)的讀者。
1.資深測試開發(fā)專家撰寫,凝聚自己多年開發(fā)經(jīng)驗(yàn),系統(tǒng)且深入闡釋利用Python進(jìn)行Web自動(dòng)化測試涉及的方法和實(shí)踐。
2. 作者提供售后服務(wù),有QQ群答疑。
3. 作者有公眾號(hào)和博客,持續(xù)更新測試方面的內(nèi)容。
陳曉伍 Python愛好者、測試開發(fā)工程師;曾就職于新浪、當(dāng)當(dāng),現(xiàn)就職于于汽車之家商業(yè)技術(shù)中心。出版過《Python Web自動(dòng)化測試設(shè)計(jì)與實(shí)現(xiàn)》。
第 1 章 Python 基礎(chǔ)..................................1
1.1 Python 溯源................................................1
1.1.1 Python 的由來....................................1
1.1.2 Python 的特點(diǎn)....................................1
1.1.3 Python 的應(yīng)用....................................2
1.1.4 Python 的版本....................................3
1.2 Python 環(huán)境安裝........................................4
1.2.1 Windows 環(huán)境安裝.............................4
1.2.2 Linux 環(huán)境安裝..................................5
1.2.3 多版本環(huán)境安裝.................................6
1.2.4 Python 第三方庫安裝.........................8
1.2.5 Python 虛擬環(huán)境安裝.......................10
1.2.6 PyCharm 開發(fā)環(huán)境安裝...................11
第 2 章 Python 語法................................17
2.1 初識(shí)Python..............................................17
2.1.1 Python 執(zhí)行環(huán)境..............................17
2.1.2 Python 執(zhí)行方式..............................18
2.2 基礎(chǔ)語法..................................................18
2.2.1 語法格式說明...................................18
2.2.2 基本數(shù)據(jù)類型...................................22
2.2.3 變量與常量.......................................27
2.2.4 運(yùn)算符與表達(dá)式...............................28
2.3 邏輯控制語句..........................................36
2.3.1 if-else 語句.......................................36
2.3.2 for 語句.............................................37
2.3.3 while 語句.........................................37
2.3.4 continue 語句....................................38
2.3.5 break 語句.........................................38
2.3.6 pass 語句...........................................39
2.4 數(shù)據(jù)結(jié)構(gòu)介紹..........................................40
2.4.1 列表...................................................40
2.4.2 元組...................................................44
2.4.3 字典...................................................45
2.4.4 字符串...............................................47
2.5 函數(shù)介紹..................................................55
2.5.1 函數(shù)定義...........................................55
2.5.2 匿名函數(shù)...........................................57
2.5.3 內(nèi)置函數(shù)介紹...................................58
2.6 類與對(duì)象..................................................65
2.6.1 類的定義...........................................65
2.6.2 模塊與包...........................................73
2.6.3 標(biāo)準(zhǔn)庫介紹.......................................74
2.7 異常處理..................................................75
2.7.1 異常捕獲與處理...............................75
2.7.2 異常拋出與分類...............................78
2.7.3 自定義異常.......................................79
2.7.4 異常妙用...........................................79
2.8 程序調(diào)試..................................................81
2.8.1 交互式...............................................81
2.8.2 調(diào)用式...............................................81
2.8.3 注入式...............................................82
2.8.4 Pdb 命令............................................82
第3 章 Python 進(jìn)階................................85
3.1 特性語法..................................................85
3.1.1 Pythonic 編程...................................85
3.1.2 推導(dǎo)表達(dá)式.......................................88
3.1.3 上下文管理器...................................89
3.1.4 迭代器..............................................94
3.1.5 生成器..............................................96
3.1.6 閉包..................................................98
3.1.7 裝飾器............................................100
3.1.8 內(nèi)省................................................105
3.1.9 語法糖............................................112
3.1.10 魔法方法與屬性...........................113
3.2 并發(fā)編程................................................ 116
3.2.1 多進(jìn)程............................................116
3.2.2 多線程............................................122
3.2.3 協(xié)程................................................127
3.2.4 異步................................................130
3.3 打包與發(fā)布............................................132
3.3.1 打包................................................132
3.3.2 發(fā)布................................................137
第4 章 常用庫實(shí)踐...............................138
4.1 日常類庫................................................138
4.1.1 sys——解釋器模塊........................138
4.1.2 os——操作系統(tǒng)模塊.....................139
4.1.3 getopt——命令行參數(shù)模塊...........143
4.1.4 minidom——XML 讀寫模塊.........145
4.1.5 json——讀寫JSON 模塊...............149
4.1.6 openpyxl——讀寫Excel 模塊.......152
4.1.7 logging——日志模塊.....................155
4.2 數(shù)據(jù)存儲(chǔ)庫............................................160
4.2.1 records——輕量級(jí)DB 框架..........160
4.2.2 redis——讀寫Redis 庫..................162
4.2.3 pymongo——讀寫MongoDB 庫....166
4.3 Web 相關(guān)庫............................................169
4.3.1 requests——HTTP 網(wǎng)絡(luò)請(qǐng)求庫.....169
4.3.2 Flask——Web 開發(fā)框架................172
第5 章 Web 前端開發(fā)基礎(chǔ)...............184
5.1 Vue 框架學(xué)習(xí).........................................184
5.1.1 基本使用.........................................184
5.1.2 模板語法.........................................185
5.1.3 表單.................................................192
5.1.4 組件.................................................195
5.1.5 路由.................................................198
5.1.6 AJAX 請(qǐng)求......................................198
5.1.7 vue-cli 腳手架................................200
5.2 案例實(shí)戰(zhàn):任務(wù)列表............................202
5.2.1 需求說明及分析.............................202
5.2.2 模塊及設(shè)計(jì).....................................202
5.2.3 數(shù)據(jù)庫設(shè)計(jì).....................................203
5.2.4 前端開發(fā).........................................203
5.2.5 后端開發(fā).........................................212
5.2.6 前后端配置.....................................216
第6 章 測試開發(fā)實(shí)踐..........................217
6.1 測試代理服務(wù)開發(fā)(HProxy)............217
6.1.1 需求說明及分析.............................217
6.1.2 模塊及設(shè)計(jì).....................................217
6.1.3 數(shù)據(jù)庫設(shè)計(jì).....................................218
6.1.4 前端開發(fā).........................................219
6.1.5 后端開發(fā).........................................224
6.2 Mock 服務(wù)開發(fā)(iMock)....................232
6.2.1 需求說明及分析.............................232
6.2.2 模塊及設(shè)計(jì).....................................232
6.2.3 數(shù)據(jù)庫設(shè)計(jì).....................................233
6.2.4 前端開發(fā).........................................234
6.2.5 后端開發(fā).........................................239
6.3 數(shù)據(jù)查詢服務(wù)開發(fā)(iData)................248
6.3.1 需求說明及分析.............................248
6.3.2 模塊及設(shè)計(jì).....................................248
6.3.3 前端開發(fā).........................................249
6.3.4 后端開發(fā).........................................253
6.4 API 測試平臺(tái)開發(fā)(iAPI) .................258
6.4.1 需求說明及分析.............................258
6.4.2 模塊及設(shè)計(jì).....................................258
6.4.3 數(shù)據(jù)庫設(shè)計(jì).....................................259
6.4.4 前端開發(fā).........................................260
6.4.5 后端開發(fā).........................................275
附錄...................................................................284
附錄1 數(shù)據(jù)庫結(jié)構(gòu)文件..............................284
附錄2 整體部署架構(gòu)..................................286
附錄3 Nginx 完整配置樣例........................287
附錄4 前后端代碼倉庫匯總.......................288