全棧接口自動化測試實踐
胡勝強、單鏡石、李睿
商品描述
目錄大綱
目錄
本書源碼
基礎篇
第1章接口自動化測試概述
1.1接口自動化測試的現狀
1.1.1接口測試與手工測試
1.1.2接口測試的流程
1.1.3接口自動化測試與UI自動化測試
1.2接口自動化測試的優勢
1.2.1接口測試與測試開發
1.2.2適合做接口自動化測試的項目
1.2.3適合做接口自動化測試的團隊
1.3主流接口自動化測試工具
1.3.1Postman
1.3.2Robot Framework
1.3.3Apifox
1.3.4Apache JMeter
1.3.5Requests
1.4接口自動化測試的發展趨勢
1.4.1接口用例平臺化
1.4.2協議及服務的多樣性
第2章HTTP基礎
2.1HTTP介紹
2.1.1HTTP的發展歷程
2.1.2HTTP的工作原理
2.1.3URL的組成
2.1.4資源、事務、報文
2.1.5HTTPS介紹
2.2HTTP請求與響應
2.2.1HTTP常用請求方法
2.2.2響應返回類型
2.3常見HTTP狀態碼
2.3.1狀態碼的作用
2.3.2常見正常返回狀態碼
2.3.3常見異常返回狀態碼
2.4Cookie和Session機制
2.4.1Cookie的原理
2.4.2Session的原理
第3章抓包利器: Fiddler
3.1Fiddler的安裝與配置
3.1.1Fiddler介紹
3.1.2Fiddler下載與安裝
3.1.3Fiddler配置
3.2Fiddler捕獲與內容解析
3.2.1工作區介紹
3.2.2Fiddler捕獲數據
3.2.3Fiddler抓包數據解析
3.3使用Fiddler做接口驗證
3.3.1驗證GET接口請求
3.3.2驗證POST接口請求
3.3.3驗證帶附件接口請求
3.4使用Fiddler捕獲App請求
3.4.1Fiddler參數設置
3.4.2App端證書安裝及代理設置
3.4.3捕獲App端接口數據
3.5Fiddler使用技巧
3.5.1捕獲內容的過濾
3.5.2常用Fiddler命令及快捷鍵
3.5.3接口響應擋板設置
第4章接口測試環境的準備
4.1Postman安裝與配置
4.1.1軟件下載
4.1.2Postman的安裝
4.1.3軟件運行調試
4.2Python的安裝與配置
4.3Apifox安裝與配置
4.3.1軟件下載
4.3.2Apifox的安裝
4.3.3軟件運行調試
4.4Apache JMeter安裝與配置
4.4.1JDK的安裝與配置
4.4.2Apache JMeter的安裝
4.4.3軟件運行調試
4.5Requests安裝與配置
4.5.1PyCharm的安裝與配置
4.5.2Requests的安裝
4.5.3軟件運行調試
第5章Requests初級使用
5.1Requests介紹
5.1.1GET方法的使用
5.1.2POST方法的使用
5.1.3PUT方法的使用
5.1.4HEAD方法的使用
5.1.5PATCH方法的使用
5.2基於GET方法的接口測試
5.2.1GET方法參數解析
5.2.2基於GET方法的請求類型
5.2.3常見Requests響應參數
5.3基於POST方法的接口測試
5.3.1POST方法參數解析
5.3.2消息主體: Data類型實例
5.3.3消息主體: JSON類型實例
5.3.4消息主體: XML類型實例
5.3.5消息主體: File類型實例
5.4接口測試常用方法
5.4.1Cookies的傳遞
5.4.2身份認證
5.4.3生成測試執行報告
工具篇
第6章接口測試工具: Postman
6.1Postman介紹
6.1.1Postman界面
6.1.2Postman使用流程
6.2使用Postman做接口測試
6.2.1基於GET方法的接口請求
6.2.2基於POST方法的接口請求
6.3Postman的斷言
6.3.1Postman內置斷言
6.3.2使用JavaScript自定義斷言
6.3.3斷言使用實例
6.4Postman的參數處理
6.4.1參數化請求數據
6.4.2前置參數處理
6.4.3Cookie的處理
6.5Newman的應用
6.5.1Newman的配置
6.5.2Newman的使用
第7章接口測試工具: Apifox
7.1Apifox介紹
7.1.1Apifox的特點
7.1.2Apifox使用流程
7.2接口文檔的定義與管理
7.2.1設計接口文檔
7.2.2接口管理
7.3使用Apifox發送接口請求
7.3.1HTTP接口實例
7.3.2WebSocket 接口實例
7.3.3WebService 接口實例
7.3.4gRPC接口實例
第8章接口測試工具: JMeter
8.1JMeter介紹
8.1.1JMeter的優勢
8.1.2JMeter主要組成
8.1.3JMeter接口測試流程
8.1.4使用Fiddler錄制接口腳本
8.2JMeter接口請求的發送
8.2.1GET請求發送實例
8.2.2POST請求發送實例
8.2.3FTP請求發送實例
8.3JMeter的斷言與參數化
8.3.1JMeter斷言
8.3.2JMeter的參數化
8.4JMeter結果輸出
8.4.1JMeter內置結果輸出
8.4.2與Ant配合輸出測試報告
8.5基於JMeter的接口測試實例
8.5.1測試思路
8.5.2腳本設計
8.5.3結果輸出
框架篇
第9章unittest的使用
9.1unittest介紹
9.1.1unittest框架的構成
9.1.2第1個unittest接口示例
9.2TestCase與TestFixture的應用
9.2.1TestCase的執行順序
9.2.2TestFixture的使用
9.3TestSuite的應用
9.3.1測試套件的創建
9.3.2discover執行更多用例
9.3.3批量執行用例
9.4TestRunner的應用
9.4.1斷言的使用
9.4.2裝飾器的使用
9.4.3生成測試報告
9.5Requests與unittest框架整合應用
9.5.1框架設計思路
9.5.2case模塊用例
9.5.3data模塊數據
9.5.4config模塊
9.5.5utils模塊
9.5.6bin運行模塊
9.5.7report輸出模塊
第10章pytest的使用
10.1pytest介紹
10.1.1框架構成
10.1.2軟件安裝
10.1.3運行規則
10.1.4測試用例
10.2Fixture與參數化
10.2.1Fixture的優勢
10.2.2用例運行的級別
10.2.3conftest.py配置文件
10.2.4測試數據的參數化
10.3裝飾器與斷言
10.3.1裝飾器的使用
10.3.2斷言的使用
10.3.3用例執行的順序
10.3.4執行異常的用例處理
10.3.5用例執行後的輸出
10.4Requests與pytest的整合實例
10.4.1框架整體設計思路
10.4.2Case模塊的實現
10.4.3配置模塊的實現
10.4.4結果輸出模塊的實現
第11章數據驅動測試應用
11.1數據驅動在接口測試中的重要性
11.1.1從文件中讀取測試數據
11.1.2將測試結果寫入數據文件
11.2基於ddt數據驅動的實現
11.2.1ddt介紹及安裝
11.2.2ddt讀取測試數據
11.2.3ddt對不同數據源的管理
11.3基於Excel方式的數據管理
11.3.1Excel管理數據的介紹及安裝
11.3.2Excel表數據的讀取
11.3.3Excel表數據的寫入
11.3.4模塊化Excel數據操作
11.4基於JSON方式的數據管理
11.4.1JSON管理數據介紹
11.4.2JSON數據的讀取
11.4.3JSON數據的寫入
11.4.4模塊化JSON數據操作
第12章Requests使用進階
12.1接口請求中的實用方法
12.1.1Cookies傳遞的處理
12.1.2請求超時及安全證書處理
12.1.3文件上傳實例
12.1.4文件下載實例
12.1.5HTML返回結果參數提取實例
12.2基於Token和Sessions處理
12.2.1請求中Token參數的處理
12.2.2請求中Sessions的處理
12.3接口傳輸加密解密
12.3.1參數傳遞前的加密處理
12.3.2獲得響應結果後的解密處理
第13章基於Web的接口測試框架案例
13.1框架設計思路
13.2case模塊的實現
13.3數據文件的處理
13.3.1config數據
13.3.2data數據
13.4utils模塊的實現
13.4.1獲取配置文件信息
13.4.2獲取Excel文件測試數據
13.4.3將測試結果寫入Excel文件
13.4.4測試用例執行前的初始化
13.4.5發送測試結果郵件
13.5運行模塊的實現
13.6結果文件的展示
13.6.1HTML運行結果報告展示
13.6.2Excel運行結果報告展示
第14章基於Jenkins持續集成的實現
14.1什麽是持續集成
14.2Jenkins的安裝配置
14.2.1軟件的下載
14.2.2JDK的安裝和配置
14.2.3Tomcat的安裝和配置
14.2.4Jenkins的安裝和配置
14.3構建定時任務
14.3.1構建Project的基本流程
14.3.2構建基於Python接口腳本的項目