注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計從0到1搭建自動化測試框架:原理、實現(xiàn)與工程實踐

從0到1搭建自動化測試框架:原理、實現(xiàn)與工程實踐

從0到1搭建自動化測試框架:原理、實現(xiàn)與工程實踐

定 價:¥99.00

作 者: 蔡超 著
出版社: 機(jī)械工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787111695202 出版時間: 2021-12-01 包裝: 平裝
開本: 16開 頁數(shù): 313 字?jǐn)?shù):  

內(nèi)容簡介

  這是一本從架構(gòu)設(shè)計、工作原理、設(shè)計原則、代碼實現(xiàn)、工程實踐等維度全面講解自動化測試框架的著作,既講透了當(dāng)下流行的各種自動化測試框架,又詳細(xì)講解了從0到1搭建自動化測試框架的方法和步驟,能指導(dǎo)讀者快速實現(xiàn)從測試工程師向測試開發(fā)工程師的轉(zhuǎn)型,完成職業(yè)生涯的飛躍。全書共16章,分為如下幾個部分: 第1部分(第1~2章):全面介紹了自動化測試框架的概念、原理、類型及通用模塊,詳細(xì)論述了自動化測試框架的設(shè)計原則,以及微服務(wù)測試下自動化測試框架應(yīng)該如何規(guī)劃和組織。 第2部分(第3~5章):著重介紹了Python語言體系下的兩個經(jīng)典開源框架unittest和pytest,以及如何用它們搭建自動化測試框架。 第3部分(第6~14章):是本書的重點,全面講解了如何從0開始、不依賴任何開源框架、自主開發(fā)自動化測試框架,手把手帶領(lǐng)讀者完成自研測試框架開發(fā)。 第4部分(第15章):講解了持續(xù)集成的核心原理和所用工具,以及如何將自研的自動化測試框架集成到企業(yè)現(xiàn)有的自動化測試流水線中,從而實現(xiàn)持續(xù)測試。 第5部分(第16章):介紹了如何將自研的自動化測試框架發(fā)布至Python官方倉庫供他人下載使用。

作者簡介

  蔡超 資深測試專家,測試開發(fā)社區(qū)VIPTEST聯(lián)合創(chuàng)始人,自動化測試框架 Ktest 作者。 在測試領(lǐng)域從業(yè)10余年,曾先后服務(wù)于惠普、英孚教育等多家國際知名企業(yè),開發(fā)過測試報告系統(tǒng)、測試論壇、爬蟲網(wǎng)站,對測試框架、自動化測試有深入研究,并被聘為中商聯(lián)互聯(lián)網(wǎng)應(yīng)用工作委員會智庫專家。 長期致力于軟件測試的技術(shù)傳播工作,著有圖書《前端自動化測試框架:Cypress從入門到精通》;在拉勾教育上開設(shè)的專欄《測試開發(fā)入門與實戰(zhàn)》曾創(chuàng)下24小時售賣超過10000份的紀(jì)錄;軟件測試類目公眾號iTesting維護(hù)者。

圖書目錄

第1章 自動化測試框架基礎(chǔ) 1
1.1 自動化測試框架概述 1
1.1.1 自動化測試框架的定義 1
1.1.2 為什么需要自動化測試框架 2
1.1.3 自動化測試框架的演化 2
1.2 自動化測試框架的通用原理 4
1.3 自動化測試框架的通用模塊 5
1.3.1 基礎(chǔ)模塊 5
1.3.2 管理模塊 6
1.3.3 運行模塊 6
1.3.4 統(tǒng)計模塊 6
1.4 自動化測試框架的類型 7
1.4.1 簡單測試框架 7
1.4.2 X-Driven測試框架 7
1.4.3 混合型測試框架 8
1.4.4 不同類型測試框架的對比 8
1.5 自動化測試框架的設(shè)計原則 9
1.6 本章小結(jié) 10

第2章 分層自動化測試與測試框架 11
2.1 分層自動化測試概述 11
2.1.1 什么是分層自動化測試 11
2.1.2 分層自動化測試的模型 13
2.2 分層自動化測試的誤區(qū) 16
2.2.1 測試一定是按順序進(jìn)行的 16
2.2.2 分層自動化測試跨層執(zhí)行是反模式 17
2.2.3 分層后單元測試越多越好 17
2.3 分層自動化測試的最佳實踐 17
2.3.1 測試盡量下沉 17
2.3.2 不要重復(fù)測試 18
2.3.3 合理選擇分層模型 19
2.3.4 考慮用戶場景 19
2.4 微服務(wù)下的自動化測試分層 20
2.4.1 微服務(wù)精要 20
2.4.2 微服務(wù)實施帶來的挑戰(zhàn)及解決之道 22
2.5 測試框架與分層自動化 24
2.6 本章小結(jié) 27

第3章 自動化測試框架初體驗 28
3.1 他山之石—unittest測試框架核心原理 28
3.1.1 unittest框架概述 28
3.1.2 unittest框架運行原理 29
3.2 融會貫通—深入使用unittest測試框架 32
3.2.1 測試夾具的使用 32
3.2.2 運行指定文件夾下的測試用例 33
3.2.3 動態(tài)查找測試用例并執(zhí)行 37
3.2.4 按需組裝測試用例并執(zhí)行 38
3.2.5 自定義測試用例查找原則 39
3.2.6 執(zhí)行時忽略某些測試用例 40
3.3 unittest自動化測試框架搭建實踐 41
3.3.1 搭建UI自動化測試框架 41
3.3.2 擴(kuò)展unittest的測試報告 44
3.3.3 使用unittest三步生成自動化測試框架 48
3.4 擴(kuò)展功能—unittest測試框架集成接口測試 49
3.4.1 Requests核心講解 49
3.4.2 unittest測試框架集成接口測試示例 53
3.5 本章小結(jié) 56

第4章 玩轉(zhuǎn)自動化測試框架 57
4.1 向經(jīng)典致敬—測試框架pytest核心講解 57
4.1.1 pytest基礎(chǔ)用法 58
4.1.2 零代價遷移unittest測試框架 60
4.1.3 pytest核心概念 62
4.2 深入探索—pytest集成API測試 63
4.3 游刃有余—pytest核心用法 65
4.3.1 自定義測試用例查找原則 65
4.3.2 前置操作和后置操作的用法 66
4.3.3 靜態(tài)挑選測試用例 68
4.3.4 動態(tài)挑選測試用例 70
4.3.5 忽略測試用例 71
4.3.6 失敗測試用例自動重試 73
4.3.7 并發(fā)運行測試用例 74
4.4 深入實現(xiàn)—pytest數(shù)據(jù)驅(qū)動核心用法 75
4.4.1 pytest實現(xiàn)數(shù)據(jù)驅(qū)動 75
4.4.2 pytest數(shù)據(jù)驅(qū)動示例 77
4.5 如虎添翼—測試報告集成實踐 85
4.5.1 pytest-html測試報告集成詳解 85
4.5.2 Allure測試報告集成詳解 86
4.6 本章小結(jié) 98

第5章 自動化測試框架最佳實踐 99
5.1 元素定位策略實踐 99
5.1.1 多種元素定位模型 99
5.1.2 元素定位實踐 101
5.2 PageObject模型實踐 106
5.2.1 PageObject模型的核心 106
5.2.2 PageObject模型應(yīng)用 107
5.3 UI自動化測試和接口自動化測試的融合 109
5.3.1 融合原理 110
5.3.2 融合實踐 111
5.4 測試數(shù)據(jù)應(yīng)用實踐 114
5.4.1 測試數(shù)據(jù)核心講解 114
5.4.2 數(shù)據(jù)驅(qū)動模型 117
5.4.3 數(shù)據(jù)驅(qū)動實踐 118
5.5 Web Service接口實踐 124
5.5.1 Web Service接口調(diào)用原理 124
5.5.2 Web Service接口測試實踐 125
5.6 本章小結(jié) 130

第6章 自動化測試框架與交互式命令 131
6.1 交互式命令精要 131
6.1.1 什么是交互式命令 131
6.1.2 交互式命令在測試框架中的作用 132
6.2 交互式命令在pytest中的使用 133
6.3 自主實現(xiàn)交互式命令 135
6.3.1 Python標(biāo)準(zhǔn)庫argparse詳解 135
6.3.2 交互式命令代碼實踐 138
6.4 測試框架集成交互式命令 139
6.5 本章小結(jié) 141

第7章 自動化測試框架與數(shù)據(jù)驅(qū)動 142
7.1 數(shù)據(jù)驅(qū)動原理概述 142
7.2 深入數(shù)據(jù)驅(qū)動原理 143
7.2.1 數(shù)據(jù)驅(qū)動DDT概述 144
7.2.2 數(shù)據(jù)驅(qū)動DDT源碼解析 149
7.3 自主實現(xiàn)數(shù)據(jù)驅(qū)動 153
7.4 本章小結(jié) 157

第8章 自動化測試框架與測試環(huán)境 158
8.1 測試環(huán)境給自動化測試框架帶來的挑戰(zhàn) 158
8.1.1 測試環(huán)境的普遍問題 158
8.1.2 自動化測試框架如何應(yīng)對測試環(huán)境變化 159
8.2 測試環(huán)境切換原理 160
8.2.1 測試環(huán)境切換原理概述 160
8.2.2 測試環(huán)境切換核心代碼實踐 161
8.3 測試框架集成測試環(huán)境動態(tài)切換 165
8.4 本章小結(jié) 170

第9章 自動化測試框架與測試用例 171
9.1 自動化測試用例詳解 171
9.2 測試用例在測試框架中的組織形式 172
9.2.1 從功能出發(fā)進(jìn)行模塊化組織 172
9.2.2 從用戶角色出發(fā)進(jìn)行模塊化組織 173
9.3 自主實現(xiàn)按需執(zhí)行測試用例 174
9.3.1 測試用例挑選的場景 175
9.3.2 挑選測試用例的原理 175
9.4 測試用例挑選與測試框架的集成 180
9.4.1 測試框架文件結(jié)構(gòu) 181
9.4.2 測試框架源碼解析 182
9.4.3 執(zhí)行測試 192
9.5 本章小結(jié) 194

第10章 自動化測試框架與并發(fā)運行 195
10.1 并發(fā)與全局解釋器鎖 195
10.2 自主實現(xiàn)并發(fā) 197
10.2.1 多線程并發(fā) 197
10.2.2 多進(jìn)程并發(fā) 201
10.2.3 多進(jìn)程下線程池并發(fā) 204
10.3 自主實現(xiàn)分布式并發(fā) 206
10.3.1 利用Selenium Grid實現(xiàn)分布式并發(fā) 206
10.3.2 分布式并發(fā)代碼實踐 207
10.4 測試框架集成實踐 208
10.4.1 集成PageObject模型 209
10.4.2 集成并發(fā)運行 213
10.5 本章小結(jié) 217

第11章 自動化測試框架與錯誤處理 218
11.1 錯誤處理核心原理 218
11.1.1 常見的錯誤處理類型 218
11.1.2 錯誤處理機(jī)制核心講解 220
11.2 自主實現(xiàn)錯誤處理模塊 222
11.2.1 自定義錯誤處理 222
11.2.2 錯誤處理模塊代碼實踐 223
11.3 測試框架集成錯誤處理 225
11.4 本章小結(jié) 230

第12章 自動化測試框架與日志系統(tǒng) 231
12.1 Logging精要講解 231
12.1.1 Logging工作流 232
12.1.2 Logging核心組成 234
12.2 自主實現(xiàn)日志系統(tǒng) 235
12.2.1 簡單的日志系統(tǒng) 235
12.2.2 多線程Logging精要 238
12.2.3 多進(jìn)程Logging精要 239
12.3 測試框架集成日志系統(tǒng) 242
12.4 本章小結(jié) 249

第13章 自動化測試框架與測試報告 250
13.1 測試報告詳解 250
13.1.1 測試報告核心模塊 250
13.1.2 測試報告設(shè)計 251
13.2 自主實現(xiàn)測試報告 253
13.2.1 測試報告模板開發(fā) 253
13.2.2 測試報告數(shù)據(jù)收集代碼實踐 258
13.3 測試框架集成測試報告 262
13.4 本章小結(jié) 268

第14章 完善自動化測試框架 269
14.1 自主實現(xiàn)前置準(zhǔn)備和后置清理 269
14.1.1 前置準(zhǔn)備和后置清理的工作流程 269
14.1.2 自主代碼實踐 271
14.2 融合API和UI進(jìn)行自動化測試 273
14.2.1 使用API或者UI進(jìn)行測試 274
14.2.2 同時運行API和UI自動化測試 275
14.3 一些遺留問題 277
14.4 本章小結(jié) 278

第15章 自動化測試框架與持續(xù)集成/持續(xù)部署 279
15.1 持續(xù)集成/持續(xù)部署核心原理講解 279
15.1.1 什么是持續(xù)集成/持續(xù)部署 279
15.1.2 持續(xù)集成/持續(xù)部署核心工作流 280
15.2 持續(xù)集成/持續(xù)部署工具詳解 281
15.2.1 Jenkins流水線 282
15.2.2 Docker核心知識 283
15.2.3 GitHub WebHook要點 286
15.3 持續(xù)集成項目實戰(zhàn) 286
15.3.1 創(chuàng)建GitHub項目 286
15.3.2 編寫Jenkinsfile文件 287
15.3.3 Jenkins Blue Ocean流水線搭建 288
15.4 本章小結(jié) 300

第16章 測試框架發(fā)布 301
16.1 測試框架打包、發(fā)布精要 301
16.1.1 詳解pip和PyPI 302
16.1.2 打包測試框架 303
16.1.3 發(fā)布到PyPI 304
16.2 測試框架發(fā)布實戰(zhàn) 304
16.3 本章小結(jié) 313

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.autoforsalebyowners.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號