一抑堡、總的學習背景
在測試金字塔模型中分為三層:最底層是單元測試,中間層接口測試朗徊,最頂層為 UI 測試首妖。接口測試位于第二層。
接口一般比較穩(wěn)定爷恳,因此接口測試的效益最大,同時接口測試可以跨應用:Web/App 跨平臺:Win有缆,Mac,Liunx
等。本套課程中將會針對接口的基本理論温亲,HTTP 協議棚壁、接口測試工具、Python 接口性能自動化測試來進行綜合
講解栈虚,讓大家全面掌握接口自動化測試袖外。
測試金字塔模型如下
1. 學習的內容
? 接口測試基礎知識
? HTTP 協議基礎原理
? 接口測試工具使用
? 接口性能自動化測試
? Restful 接口開發(fā)測試
? Python+Request 接口測試
? 接口 Mock Server 實踐
2. 學習目標
? 掌握接口測試理論方法
? 掌握接口測試工具使用
? 掌握 HTTP 協議
? 獨立編寫 Python 接口測試腳本
? 獨立完成接口性能自動化測試
? 熟悉 Restful 接口開發(fā)與調試
二、接口測試學習框架
- 接口測試理論
- HTTP基本原理
- 接口測試基礎
- Python接口測試
- 接口自動化性能測試
-
接口開發(fā)與測試
image.png
三魂务、 什么是接口暂论?
1. API
API(Application Programming Interface,應用程序編程接口)是一些預先定義的函數,目的是提供應用程序與
開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力嵌削,而又無需訪問源碼羔砾,或理解內部工作機制的細節(jié)。
舉例說明:
? 筆記本電腦上提供了各種物理硬件接口相艇,比如 USB 接口颖杏,耳機接口、麥克風接口坛芽、電源接口等.... 這些不
同的接口有不同的功能:比如通過 USB 接口插入 U 盤就可以拷貝電腦數據留储,插入耳機接口可以聽音樂,我
們無需關心這些接口的工作原理咙轩,只需通過這些接口滿足我們的使用需求即可获讳。
? 在中國天氣網網上查詢某個城市天氣,主要輸入城市名稱活喊,即可獲取到對應的天氣丐膝。查詢背后的本質也是
調用了網站后臺接口來獲取數據,這里的接口是 Web 服務軟件接口钾菊。用戶不需要關注數據在網站后臺是怎
么查詢的帅矗,只需要返回一個結果即可。
2. 開放平臺
基于互聯網的應用正變得越來越普及煞烫,在這個過程中浑此,有更多的站點將自身的資源開放給開發(fā)者來調用。對外提供
的 API 調用使得站點之間的內容關聯性更強滞详,同時這些開放的平臺也為用戶凛俱、開發(fā)者和中小網站帶來了更大的價值。
3. 接口測試
1) 什么是接口測試料饥?
接口測試是對系統(tǒng)或組件之間的接口進行測試蒲犬,主要是校驗數據的交換,傳遞和控制管理過程稀火,以及相互邏輯依賴
關系暖哨。其中接口協議分為 HTTP , WebService , Dubbo , Thrift , Socket 等類型,本套課程主要是針對 HTTP 類型接口來進行
講解凰狞。測試類型又主要分為功能測試篇裁,性能測試,穩(wěn)定性測試赡若,安全性測試等达布。
2)為什么要做接口測試?
接口測試實施在多系統(tǒng)的平臺架構下逾冬,有著極為高效的成本收益比(當然黍聂,單元測試收益更高躺苦,但實施單元測試的
成本投入更大产还,技術要求更高)。
接口測試天生為高復雜性的平臺帶來高效的缺陷檢測和質量監(jiān)督能力脐区,平臺復雜,系統(tǒng)越龐大牛隅,接口測試的效果越
明顯炕柔。
4.接口測試優(yōu)勢主要體現在如下三個方面:
1、節(jié)省了測試成本
根據數據模型推算媒佣,底層的一個程序 BUG 可能引發(fā) UI 層的 8 個左右 BUG匕累,而且底層的 BUG 更容易引起全網的死
機默伍;接口測試能夠提供系統(tǒng)復雜度上升情況下的低成本高效率的解決方案。
2巡验、接口測試門檻相對較低
接口測試不同于單元測試际插,接口測試是站在用戶的角度對系統(tǒng)接口進行全面高效持續(xù)的檢測。
3显设、效益更高
將接口測試實現為自動化和持續(xù)集成框弛,當系統(tǒng)復雜度和體積越大,接口測試的成本就越低瑟枫,相對應的,效益產出就
越高慷妙。
5.怎么樣去做接口測試允悦?
1)基本的接口功能自動化測試流程如下:
需求分析 -> 用例設計 -> 腳本開發(fā) -> 測試執(zhí)行 -> 結果分析
- 需求分析
需求分析是參考需求膝擂、設計等文檔隙弛,在了解需求的基礎上還需清楚內部的實現邏輯,并且可以在這一階段提出需求全闷、
設計存在的不合理或遺漏之處。
用例設計
用例設計是在理解接口測試需求的基礎上总珠,使用 Excel 或 XMind 等思維導圖軟件編寫測試用例設計勘纯,主要內容包括
參數校驗,功能校驗驳遵、業(yè)務場景校驗降淮、安全性及性能校驗等超埋,常用的用例設計方法有等價類劃分法佳鳖,邊界值分析法媒惕,
場景分析法系吩,因果圖妒蔚,正交表等。腳本開發(fā)
使用自己熟悉的語言或者工具來開發(fā)即可肴盏。測試執(zhí)行
可以直接運行接口測試腳本或者使用 CI 來執(zhí)行測試
結果分析
根據測試報告來分析接口測試結果
。
參考資料
? https://baike.baidu.com/item/接口/2886384?fr=aladdin
? https://blog.csdn.net/lovesoo/article/details/78558303?locationNum=9&fps=1
? https://www.cnblogs.com/imyalost/p/7430126.html
? https://testerhome.com/topics/11051