軟件自動化測試入門攻略 版權(quán)信息
- ISBN:9787302651048
- 條形碼:9787302651048 ; 978-7-302-65104-8
- 裝幀:平裝-膠訂
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
軟件自動化測試入門攻略 本書特色
《軟件自動化測試入門攻略》一書是作者花費了近兩年時間完成的一本大作,專門為入 門、入行人員編寫,無論你是初學(xué)者,還是想轉(zhuǎn)型、轉(zhuǎn)專業(yè)學(xué)習(xí)軟件自動化測試,本書 都適合你。
書中充分考慮到新手入門自動化測試的特點,從工具學(xué)習(xí)入手,包括Unittest、 Pytest、Requests、Selenium、Postman、Appium、JMeter,對于入行者來說,掌握這幾 種工具,是從事相關(guān)工具的前題,然后以一個真實的項目為例分別介紹了各種工具在單元測試、代碼包測試、接口測試、Web UI測試、移動端測試、性能測試中的應(yīng)用,各測試范例均依照“需求分析→用例設(shè)計→腳本開發(fā)→測試執(zhí)行→結(jié)果分析”的自動化測試流程,詳細(xì)介紹方法論、關(guān)鍵知識與核心技能,這樣安排的好處是,學(xué)以致用,有的放矢,學(xué)完之后,即可直接上手公司項目,本書的*后還介紹了測試項目的容器化部署,這也是目前在測試項目中廣泛使用的技術(shù)。
《軟件自動化測試入門攻略》結(jié)構(gòu)新穎,內(nèi)容豐富,與實際工作緊張結(jié)合,看得懂,學(xué)得會,用得上,是本書的一大特色,相信所有想入手自動測試的讀者,本書都能讓你受益匪淺。
軟件自動化測試入門攻略 內(nèi)容簡介
《軟件自動化測試入門攻略》以軟件自動化測試工具在項目實踐中的應(yīng)用為主線,依照“需求分析→用例設(shè)計→腳本開發(fā)→測試執(zhí)行→結(jié)果分析”的自動化測試流程,詳細(xì)介紹軟件自動化測試的方法論、推薦知識與核心技能。全書共15章,第1章至第8章主要介紹當(dāng)前企業(yè)使用率**的unittest、pytest、Requests、Postman、Selenium、Appium和JMeter 7款自動化測試工具,第9章至第14章分別以Leadshop開源商城系統(tǒng)中的部分模塊為實戰(zhàn)對象,運用前述章節(jié)的工具依次實現(xiàn)單元測試、代碼包測試、接口測試、Web UI測試、移動端測試和性能測試演練,完成基礎(chǔ)工具的單個知識點學(xué)習(xí)到項目的綜合運用,第15章介紹Docker容器技術(shù)及其在Jenkins中實現(xiàn)測試項目的任務(wù)部署,完成分布式節(jié)點掛載和定時執(zhí)行。
《軟件自動化測試入門攻略》來自一線資深測試工程師多年從業(yè)經(jīng)驗的總結(jié),內(nèi)容詳實,貼近實際工作需要,既可幫助對自動化測試感興趣的新手快速入門和入行,又可對有一定測試基礎(chǔ)的讀者實現(xiàn)自我能力的提升和突破。
軟件自動化測試入門攻略 目錄
第1章 自動化測試概述 1
1.1 什么是軟件自動化測試 1
1.1.1 定義 1
1.1.2 應(yīng)用條件 1
1.1.3 對比手工測試 2
1.1.4 分類 3
1.1.5 價值 4
1.2 自動化測試的概念 6
1.2.1 流程 6
1.2.2 原則 7
1.2.3 測試模型 8
1.2.4 度量模型 10
1.3 自動化測試常用工具 12
1.3.1 單元測試工具 12
1.3.2 代碼包測試工具 13
1.3.3 接口測試工具 13
1.3.4 Web UI測試工具 14
1.3.5 App測試工具 15
1.3.6 性能測試工具 16
1.4 如何入門自動化測試 17
1.4.1 入門是基礎(chǔ) 17
1.4.2 入行是起點 18
1.4.3 入職是挑戰(zhàn) 18
1.5 思考題 18
第2章 unittest 19
2.1 簡介 19
2.2 測試用例 20
2.3 測試腳手架 21
2.4 測試套件 23
2.4.1 TestSuite類構(gòu)建 23
2.4.2 TestLoader類構(gòu)建 25
2.4.3 其他方法構(gòu)建 26
2.5 測試運行器 27
2.6 命令行接口 28
2.7 用例執(zhí)行順序 30
2.8 測試斷言 31
2.9 skip裝飾器 33
2.10 模擬對象mock 36
2.11 ddt實現(xiàn)參數(shù)化 38
2.12 多線程運行 42
2.13 定時運行 44
2.14 生成測試報告 46
2.15 發(fā)送測試結(jié)果通知 48
2.16 思考題 54
第3章 pytest 55
3.1 簡介 55
3.2 **個示例 55
3.3 測試用例 57
3.4 命令行參數(shù) 59
3.5 跳過 61
3.6 標(biāo)記 62
3.6.1 內(nèi)置標(biāo)記 63
3.6.2 自定義標(biāo)記 64
3.7 夾具 66
3.7.1 fixture參數(shù) 66
3.7.2 夾具的使用 67
3.7.3 夾具作用域 68
3.7.4 共享夾具 70
3.8 參數(shù)化 72
3.8.1 標(biāo)記方式實現(xiàn) 72
3.8.2 夾具方式實現(xiàn) 73
3.9 配置文件 74
3.10 插件 76
3.11 分布式執(zhí)行 77
3.12 Allure測試報告 79
3.12.1 Allure安裝 79
3.12.2 生成測試報告 80
3.12.3 Allure特性與應(yīng)用示例 82
3.13 思考題 87
第4章 Requests 88
4.1 簡介 88
4.2 主要方法 89
4.2.1 請求示例 89
4.2.2 查詢參數(shù) 90
4.2.3 響應(yīng)對象 91
4.3 發(fā)送GET請求 92
4.3.1 params參數(shù) 92
4.3.2 自定義請求頭 93
4.4 發(fā)送POST請求 94
4.4.1 data參數(shù) 95
4.4.2 json參數(shù) 96
4.5 發(fā)送其他類型的請求 97
4.5.1 發(fā)送HEAD請求 98
4.5.2 發(fā)送PUT請求 98
4.5.3 發(fā)送PATCH請求 98
4.5.4 發(fā)送DELETE請求 99
4.6 文件上傳 99
4.7 文件下載 100
4.8 Cookies參數(shù) 101
4.9 Session對象 103
4.10 重定向 104
4.11 添加代理 105
4.12 超時設(shè)置 106
4.13 異常處理 106
4.14 證書驗證 107
4.15 身份認(rèn)證 107
4.16 生成測試用例腳本 108
4.17 思考題 110
第5章 Postman 111
5.1 安裝 111
5.2 界面介紹 113
5.3 HTTP請求 115
5.3.1 請求界面介紹 116
5.3.2 GET請求 117
5.3.3 POST請求 118
5.3.4 其他類型請求 121
5.3.5 文件上傳 122
5.3.6 文件下載 123
5.3.7 授權(quán) 124
5.3.8 前置腳本 126
5.3.9 后置腳本 128
5.3.10 請求設(shè)置 131
5.3.11 其他 132
5.4 環(huán)境和變量 132
5.5 Cookies管理 135
5.6 代理設(shè)置 136
5.7 證書管理 138
5.8 集合管理 140
5.8.1 執(zhí)行集合 141
5.8.2 參數(shù)化 142
5.8.3 分支和循環(huán) 144
5.9 模擬服務(wù)器 145
5.10 監(jiān)視器 148
5.11 命令行執(zhí)行集合 152
5.12 思考題 157
第6章 Selenium 158
6.1 簡介 158
6.1.1 版本演進(jìn) 158
6.1.2 特點 159
6.1.3 WebDriver的工作原理 159
6.2 環(huán)境準(zhǔn)備 160
6.2.1 安裝Selenium 160
6.2.2 安裝瀏覽器驅(qū)動 161
6.2.3 **個示例 162
6.3 瀏覽器操作 163
6.4 頁面元素定位 169
6.4.1 頁面查找元素 170
6.4.2 id定位 171
6.4.3 name定位 171
6.4.4 class定位 172
6.4.5 tag定位 172
6.4.6 link定位 173
6.4.7 partial link定位 173
6.4.8 css定位 173
6.4.9 xpath定位 174
6.4.10 相對定位 178
6.4.11 定位一組元素 179
6.5 獲取頁面內(nèi)容 180
6.6 獲取元素屬性 181
6.7 頁面元素操作 183
6.7.1 單擊 183
6.7.2 輸入文本 184
6.7.3 清除文本 184
6.7.4 提交表單 185
6.7.5 單選框操作 186
6.7.6 復(fù)選框操作 187
6.7.7 下拉框操作 187
6.7.8 Frame結(jié)構(gòu)操作 189
6.8 文件操作 191
6.8.1 文件上傳 191
6.8.2 文件下載 192
6.9 模擬鼠標(biāo)操作 194
6.10 模擬鍵盤操作 197
6.11 延時等待 198
6.12 瀏覽器配置 201
6.13 其他操作 203
6.13.1 調(diào)用JavaScript 203
6.13.2 Cookie操作 204
6.13.3 屏幕截圖 205
6.13.4 獲取環(huán)境信息 205
6.13.5 執(zhí)行CDP命令 206
6.13.6 設(shè)置超時時間 207
6.14 Webdriver Manager 207
6.15 Selenium Grid 208
6.16 生成測試用例腳本 212
6.17 思考題 218
第7章 Appium 219
7.1 簡介 219
7.2 Android模擬器 220
7.3 ADB工具 221
7.3.1 ADB的工作原理 221
7.3.2 ADB工具安裝 222
7.3.3 ADB常用命令 224
7.3.4 自動化測試中常用的ADB命令 225
7.4 Appium環(huán)境準(zhǔn)備 228
7.4.1 安裝Appium Desktop 228
7.4.2 安裝Appium Inspector 229
7.4.3 Appium簡單使用 230
7.4.4 Inspector功能 233
7.4.5 腳本錄制 233
7.4.6 查看元素屬性 236
7.5 Appium Server 236
7.6 Appium Client 238
7.7 UI Automator Viewer 240
7.8 元素定位 241
7.9 元素操作 243
7.10 獲取元素屬性 244
7.11 觸控事件 246
7.11.1 TouchAction 246
7.11.2 輸入源行為 248
7.11.3 單點觸控 249
7.11.4 多點觸控 250
7.11.5 其他觸控操作 252
7.12 設(shè)備交互API 254
7.13 Android Toast識別 258
7.14 其他操作 259
7.15 不同應(yīng)用的測試 262
7.15.1 App應(yīng)用程序的分類 262
7.15.2 案例一:
原生應(yīng)用的測試 263
7.15.3 案例二:
Web應(yīng)用測試 271
7.15.4 案例三:
混合應(yīng)用測試 275
7.15.5 案例四:
微信小程序測試 277
7.16 穩(wěn)定性測試 279
7.16.1 Monkey簡介 279
7.16.2 Monkey常用參數(shù) 280
7.16.3 Monkey日志分析 282
7.17 思考題 285
第8章 JMeter 286
8.1 簡介 286
8.2 安裝 287
8.3 配置文件 288
8.4 界面介紹 291
8.5 腳本錄制 293
8.6 基本組件 297
8.7 測試計劃 298
8.8 線程組 301
8.8.1 普通線程組 302
8.8.2 開放模型線程組 304
8.9 取樣器 305
8.9.1 HTTP請求 306
8.9.2 調(diào)試取樣器 311
8.9.3 BeanShell 取樣器 312
8.9.4 FTP請求 314
8.9.5 JDBC請求 316
8.9.6 SMTP取樣器 316
8.10 配置元件 320
8.10.1 CSV數(shù)據(jù)文件設(shè)置 321
8.10.2 HTTP信息頭管理器 323
8.10.3 HTTP Cookie管理器 324
8.10.4 HTTP請求默認(rèn)值 326
8.10.5 JDBC連接配置器 327
8.10.6 隨機(jī)變量 330
8.11 前置處理器 332
8.11.1 用戶參數(shù) 333
8.11.2 取樣器超時 334
8.12 后置處理器 334
8.12.1 CSS/Query提取器 335
8.12.2 JSON提取器 337
8.12.3 正則表達(dá)式提取器 338
8.12.4 XPath提取器 339
8.13 斷言 341
8.13.1 響應(yīng)斷言 342
8.13.2 JSON斷言 343
8.13.3 XPath斷言 345
8.14 定時器 346
8.14.1 固定定時器 347
8.14.2 統(tǒng)一隨機(jī)定時器 347
8.14.3 同步定時器 347
8.14.4 高斯隨機(jī)定時器 348
8.15 監(jiān)聽器 348
8.15.1 查看結(jié)果樹 349
8.15.2 聚合報告 350
8.15.3 響應(yīng)時間圖 351
8.15.4 斷言結(jié)果 351
8.16 邏輯控制器 352
8.16.1 IF控制器 353
8.16.2 循環(huán)控制器 354
8.16.3 ForEach控制器 355
8.16.4 僅一次控制器 356
8.17 作用域和執(zhí)行順序 357
8.18 插件 357
8.19 函數(shù) 360
8.20 分布式部署 362
8.21 可視化監(jiān)控平臺的搭建與使用 364
8.21.1 安裝和部署InfluxDB 1.7 365
8.21.2 安裝和部署Grafana 365
8.21.3 Grafana中添加
JMeter模板 366
8.21.4 創(chuàng)建和運行JMeter腳本 367
8.22 思考題 368
第9章 實現(xiàn)單元測試 370
9.1 被測產(chǎn)品介紹 370
9.1.1 項目介紹 370
9.1.2 產(chǎn)品搭建 371
9.2 單元測試簡介 374
9.2.1 概念 374
9.2.2 分類 375
9.2.3 對測試人員的要求 375
9.3 用例設(shè)計方法 376
9.3.1 路徑覆蓋 377
9.3.2 語句覆蓋 377
9.3.3 條件覆蓋 378
9.3.4 判定覆蓋 379
9.3.5 判定和條件覆蓋 380
9.3.6 條件組合覆蓋 381
9.4 實戰(zhàn)對象 381
9.5 設(shè)計測試用例 383
9.6 編寫測試腳本 384
9.7 統(tǒng)計代碼覆蓋率 385
9.8 思考題 387
第10章 實現(xiàn)代碼包測試 389
10.1 什么是代碼包 389
10.2 用例設(shè)計方法 389
10.3 實踐對象 390
10.4 設(shè)計測試用例 392
10.5 編寫測試腳本 393
10.6 測試運行 397
10.7 思考題 398
第11章 實現(xiàn)接口測試 399
11.1 接口測試簡介 399
11.1.1 概念 399
11.1.2 常見接口協(xié)議 400
11.2 用例設(shè)計方法 401
11.3 實戰(zhàn)對象 403
11.4 構(gòu)建項目結(jié)構(gòu) 404
11.5 設(shè)計測試用例 406
11.6 編寫項目腳本 407
11.6.1 設(shè)計測試用例文件 407
11.6.2 添加基礎(chǔ)配置數(shù)據(jù) 413
11.6.3 讀取配置文件內(nèi)容 414
11.6.4 獲取測試用例數(shù)據(jù) 415
11.6.5 封裝接口請求函數(shù) 418
11.6.6 設(shè)置共享夾具 419
11.6.7 封裝斷言函數(shù) 419
11.6.8 添加測試用例函數(shù) 422
11.7 執(zhí)行測試項目 425
11.8 思考題 427
第12章 實現(xiàn)Web UI測試 428
12.1 Web UI測試簡介 428
12.2 用例設(shè)計方法 429
12.3 Page Object模型 430
12.4 實戰(zhàn)對象 432
12.5 設(shè)計測試用例 433
12.6 項目結(jié)構(gòu)搭建 434
12.7 編寫測試腳本 436
12.7.1 封裝元素定位 436
12.7.2 添加測試數(shù)據(jù) 438
12.7.3 頁面功能函數(shù)封裝 439
12.7.4 實現(xiàn)測試用例 446
12.8 執(zhí)行測試項目 452
12.9 思考題 453
第13章 實現(xiàn)移動端測試 454
13.1 App測試簡介 454
13.2 項目實戰(zhàn)對象 455
13.3 項目結(jié)構(gòu)搭建 456
13.4 編寫測試腳本 457
13.4.1 封裝元素定位 457
13.4.2 添加測試數(shù)據(jù) 458
13.4.3 頁面功能函數(shù)封裝 459
13.4.4 實現(xiàn)測試用例 465
13.5 執(zhí)行測試項目 466
13.6 思考題 467
第14章 實現(xiàn)性能測試 468
14.1 性能測試簡介 468
14.1.1 測試流程 469
14.1.2 常見性能指標(biāo) 469
14.1.3 流量回放技術(shù) 470
14.2 性能需求分析 471
14.3 制訂測試計劃 472
14.4 確定測試方案 475
14.5 搭建測試環(huán)境 478
14.6 準(zhǔn)備測試數(shù)據(jù) 479
14.7 開發(fā)壓測腳本 479
14.7.1 添加請求 479
14.7.2 運行調(diào)試 485
14.7.3 設(shè)置斷言 487
14.7.4 增加壓力 490
14.8 測試執(zhí)行及監(jiān)控 492
14.9 結(jié)果分析 493
14.10 性能調(diào)優(yōu) 497
14.11 編寫測試報告 498
14.12 思考題 498
第15章 容器化部署與自動化測試 499
15.1 什么是容器化部署 499
15.2 Docker安裝 500
15.3 Docker核心概念 502
15.4 Docker使用 503
15.4.1 倉庫操作 503
15.4.2 鏡像操作 504
15.4.3 容器操作 506
15.5 Dockerfile 510
15.6 Docker部署Jenkins 513
15.6.1 Jenkins安裝 513
15.6.2 Jenkins在自動化測試中的應(yīng)用 515
15.7 持續(xù)集成與自動化測試 522
15.7.1 什么是持續(xù)集成 523
15.7.2 持續(xù)集成常用工具 523
15.7.3 部署測試項目 524
15.8 思考題 524
參考文獻(xiàn) 525
展開全部
軟件自動化測試入門攻略 作者簡介
楊定佳,一線資深軟件測試工程師,博客園優(yōu)秀博主,藍(lán)橋云課入駐作者,51Testing測試圈講堂 特邀講師,長期從事自動化測試設(shè)計、框架搭建和開發(fā)工作,對各類軟件測試工具及相 關(guān)技術(shù)駕輕就熟。出版《Python Web自動化測試入門與實戰(zhàn)》一書,編寫的《菜鳥輕松 拿Offer:軟件測試工程師面試秘笈》一書榮獲2021年度“51CTO.最受讀者喜愛有IT圖書 ”獎。