站外推廣怎么做seo外鏈招聘
一、接口測(cè)試簡(jiǎn)介
什么是接口測(cè)試?
接口測(cè)試是測(cè)試系統(tǒng)組件間接口的一種測(cè)試,主要用于檢測(cè)外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。
測(cè)試的重點(diǎn):
- 檢查數(shù)據(jù)的交換,傳遞和控制管理過(guò)程;
- 檢查系統(tǒng)間的相互邏輯依賴關(guān)系等。
為什么做接口測(cè)試?
什么是微服務(wù)
微服務(wù)的特點(diǎn)
復(fù)雜度可控
- 服務(wù)邊界清晰
- 體積小、復(fù)雜度低
- 開(kāi)發(fā)、維護(hù)簡(jiǎn)單
容錯(cuò)性更高
- 可以使故障隔離在單個(gè)服務(wù)中
技術(shù)選型更靈活
- 可以結(jié)合業(yè)務(wù)特性自由選擇技術(shù)棧
可擴(kuò)展性更強(qiáng)
- 根據(jù)每個(gè)微服務(wù)的性能要求和業(yè)務(wù)特點(diǎn)來(lái)對(duì)服務(wù)進(jìn)行靈活擴(kuò)展
- 獨(dú)立部署,使得發(fā)布更高效
接口測(cè)試的目的
- 控制住接口質(zhì)量,終端問(wèn)題會(huì)少很多
- 提高回歸測(cè)試效率,保證質(zhì)量
- 發(fā)現(xiàn)更底層的問(wèn)題
- 更早的發(fā)現(xiàn)問(wèn)題
- 縮短測(cè)試周期
- 基于接口層面實(shí)現(xiàn)脫離手工的方式高效執(zhí)行測(cè)試
- 接口自動(dòng)化目的是提升效率
二、HTTP請(qǐng)求與RESTful API
HTTP請(qǐng)求常見(jiàn)請(qǐng)求方法
請(qǐng)求方法 | GET | POST | PUT | DELETE | PATCH |
---|---|---|---|---|---|
CURD | Read | Create/Update | Update/Create | Delete | Update |
意義 | 請(qǐng)求指定的頁(yè)面信息,并返回實(shí)體主體 | 向指定資源提交數(shù)據(jù)進(jìn)行處理請(qǐng)求,POST 請(qǐng)求可能會(huì)導(dǎo)致新的資源的建立和/或已有資源的修改 | 從客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi)容 | 請(qǐng)求服務(wù)器刪除指定的資源 | 用來(lái)更新局部資源 |
HTTP請(qǐng)求—請(qǐng)求報(bào)文
一個(gè)HTTP請(qǐng)求報(bào)文由請(qǐng)求行、請(qǐng)求頭、空行和請(qǐng)求體4個(gè)部分組成:
請(qǐng)求行 | 由三部分組成:請(qǐng)求方法,請(qǐng)求URL,HTTP協(xié)議版本 |
---|---|
請(qǐng)求頭 | 用來(lái)說(shuō)明服務(wù)器要使用的附加信息 |
空行 | 通知服務(wù)器請(qǐng)求頭結(jié)束 |
請(qǐng)求體 | 可以添加任意的其他數(shù)據(jù) |
HTTP響應(yīng)—響應(yīng)報(bào)文
響應(yīng)報(bào)文由 狀態(tài)行、響應(yīng)頭、空行和響應(yīng)體組成
響應(yīng)行 | 1)響應(yīng)的協(xié)議和版本號(hào)(2)響應(yīng)狀態(tài)碼(3)響應(yīng)狀態(tài)描述符 |
---|---|
響應(yīng)頭 | 類似請(qǐng)求頭,告知客戶端的附加信息,是一系列 key-value 值 |
空行 | 類似請(qǐng)求,用來(lái)分隔響應(yīng)頭和數(shù)據(jù)。 |
響應(yīng)體 | 響應(yīng)的數(shù)據(jù) |
HTTP響應(yīng)–常見(jiàn)狀態(tài)碼
狀態(tài)碼 | 說(shuō)明 |
---|---|
200 | OK:客戶端請(qǐng)求已被成功接收,理解,接受。 |
400 | Bad Request:客戶端請(qǐng)求有語(yǔ)法錯(cuò)誤,不能被服務(wù)器所理解。 |
401 | Unauthorized :請(qǐng)求未經(jīng)授權(quán),這個(gè)狀態(tài)代碼必須和WWW-Authenticate 報(bào)頭域一起使用。 |
403 | Forbidden:服務(wù)器收到請(qǐng)求,但是拒絕提供服務(wù)。 |
404 | Not Found:請(qǐng)求資源不存在,舉個(gè)例子:輸入了錯(cuò)誤的URL。 |
500 | Internal Server Error:服務(wù)器發(fā)生不可預(yù)期的錯(cuò)誤。 |
503 | Server Unavailable:服務(wù)器當(dāng)前不能處理客戶端的請(qǐng)求,一段時(shí)間后可能恢復(fù)正常 |
三、接口測(cè)試策略
接口功能測(cè)試
接口功能測(cè)試用例設(shè)計(jì)的重點(diǎn),在于功能性的業(yè)務(wù)邏輯檢查和參數(shù)檢查。
(1) 針對(duì)輸入,可參考參數(shù)類型進(jìn)行設(shè)計(jì);
(2) 針對(duì)接口處理,可按照邏輯進(jìn)行用例設(shè)計(jì);
(3) 針對(duì)輸出,可根據(jù)結(jié)果進(jìn)行分析設(shè)計(jì);
接口測(cè)試用例設(shè)計(jì)應(yīng)該滿足需求文檔,且對(duì)異常場(chǎng)景進(jìn)行友好處理;且測(cè)試
這個(gè)接口是否按照接口文檔進(jìn)行開(kāi)發(fā)。
接口文檔測(cè)試
接口文檔測(cè)試也就是接口文檔規(guī)范。
通過(guò)文檔獲取接口的說(shuō)明、請(qǐng)求參數(shù)、響應(yīng)參數(shù)以及一些依賴關(guān)系。
一般包括接口名、接口描述、接口地址、請(qǐng)求方式、請(qǐng)求參數(shù)和格式、響應(yīng)參數(shù)和格式等。
接口異常測(cè)試
- 非法參數(shù)測(cè)試
- 冪等測(cè)試
- 并發(fā)測(cè)試
- 事務(wù)測(cè)試
- 環(huán)境異常測(cè)試
- 大數(shù)據(jù)量時(shí)測(cè)試
接口安全測(cè)試
- API十大安全風(fēng)險(xiǎn):
- 失效的對(duì)象級(jí)別授權(quán)
- 失效的用戶身份驗(yàn)證
- 過(guò)度的數(shù)據(jù)暴露
- 資源缺乏和速率限制
- 失效的功能級(jí)授權(quán)
- 批量分配
- 安全配置錯(cuò)誤
- 注入
- 資產(chǎn)管理不當(dāng)
- 日志和監(jiān)視不足
接口性能測(cè)試
用戶視角
感受到的網(wǎng)站響應(yīng)速度的快和慢。
開(kāi)發(fā)視角
主要關(guān)注包括系統(tǒng)吞吐量,并發(fā)處理能力,系統(tǒng)穩(wěn)定性,響應(yīng)延遲等。
運(yùn)維視角
主要關(guān)注基礎(chǔ)設(shè)施性能和資源利用率。
如何設(shè)計(jì)接口壓力測(cè)試方案
確定并發(fā)數(shù):
可以通過(guò)嘗試的方式。第一次設(shè)置自己預(yù)期接口需要達(dá)到的并發(fā)數(shù),進(jìn)行壓力測(cè)試。然后通過(guò)二分法進(jìn)行調(diào)整。
確定總請(qǐng)求次數(shù):
可以嘗試用現(xiàn)有線上業(yè)務(wù)每天產(chǎn)生的數(shù)量乘以一定的天數(shù),作為接口壓力測(cè)試的總請(qǐng)求次數(shù)
選取壓力測(cè)試數(shù)據(jù):
通常隨機(jī)選擇數(shù)據(jù)。但是要注意重復(fù)進(jìn)行壓力測(cè)試對(duì)性能的影響。
四、接口測(cè)試流程
階段 | 功能測(cè)試 | 接口測(cè)試 |
---|---|---|
需求 | 熟悉業(yè)務(wù),業(yè)務(wù)問(wèn)題溝通,測(cè)試范圍討論 | 自動(dòng)化可行性研究,潛在自動(dòng)化技術(shù)問(wèn)題討論 |
設(shè)計(jì) | 功能測(cè)試范圍,參與人員 計(jì)劃排期 | 技術(shù)選型、排期、范圍 |
開(kāi)發(fā) | 測(cè)試用例編寫(xiě)、評(píng)審和優(yōu)化 | 編寫(xiě)和調(diào)試接口自動(dòng)化腳本以及自動(dòng)化場(chǎng)景 |
測(cè)試 | 測(cè)試執(zhí)行、問(wèn)題追蹤、復(fù)測(cè) | 接口測(cè)試執(zhí)行、CICD集成 |
運(yùn)維 | 生產(chǎn)環(huán)境驗(yàn)證、問(wèn)題跟蹤 | 線上接口自動(dòng)化巡檢、服務(wù)可用性檢查 |