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

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

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

定 價(jià):¥99.00

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

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

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書目錄

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

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

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

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

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

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

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

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

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

第10章 自動(dòng)化測(cè)試框架與并發(fā)運(yùn)行 195
10.1 并發(fā)與全局解釋器鎖 195
10.2 自主實(shí)現(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 自主實(shí)現(xiàn)分布式并發(fā) 206
10.3.1 利用Selenium Grid實(shí)現(xiàn)分布式并發(fā) 206
10.3.2 分布式并發(fā)代碼實(shí)踐 207
10.4 測(cè)試框架集成實(shí)踐 208
10.4.1 集成PageObject模型 209
10.4.2 集成并發(fā)運(yùn)行 213
10.5 本章小結(jié) 217

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

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

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

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

第15章 自動(dòng)化測(cè)試框架與持續(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核心知識(shí) 283
15.2.3 GitHub WebHook要點(diǎn) 286
15.3 持續(xù)集成項(xiàng)目實(shí)戰(zhàn) 286
15.3.1 創(chuàng)建GitHub項(xiàng)目 286
15.3.2 編寫Jenkinsfile文件 287
15.3.3 Jenkins Blue Ocean流水線搭建 288
15.4 本章小結(jié) 300

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

本目錄推薦

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