接口測試入門(二)-原理與方法

一、為什么要做接口測試

對于為什么要做接口測試,我們舉一個工作中的例子來看這個問題。

現(xiàn)在有這么一個需求:

一、需求背景

????????由于業(yè)務需求,需要對服務端下發(fā)給客戶端的數(shù)據(jù),針對客戶端的版本號進行控制。

二、具體需求

????????客戶后臺配置數(shù)據(jù)的列表增加“數(shù)據(jù)可見顯示的最低版本號”入口。配置之后,客戶端的版本號需要大于此條數(shù)據(jù)配置的版本號,才能展示。

如果是通過客戶端測試這個功能:

我們需要準備 一個大于限制版本的客戶端,一個等于限制版本的客戶端,一個小于限制版本的客戶端。

這里已經(jīng)需要準備三個客戶端版本。如果還要測試異常情況,比如版本號為空,這種客戶端準備起來則更加復雜。

如果是直接通過接口請求測試這個功能:

那我們只需要改變幾次參數(shù)就可以達到客戶端測試的效果。

而且所用的時間則快了好幾倍,并且測試異常的情況也容易許多。


所以對于“為什么要做接口測試”這個問題,有下面幾種原因:

1.部分客戶端的功能是在接口已經(jīng)完成的基礎上開發(fā),越底層發(fā)現(xiàn)bug,bug的修復成本是越低

2.大部分的系統(tǒng)前后端架構(gòu)是分離,客戶端進測時間與服務端進測時間不一樣。

3.通過客戶端測試接口,不能滿足異常情況的測試需求。例如需要在請求參數(shù)中傳遞一個空值進行驗證,但客戶端可能已經(jīng)在前端做了對空值的限制,所以這種情況只能通過直接發(fā)送接口請求進行測試。

二、接口功能測試原理

接口測試原理:

接口測試的主要的目的,是為了測試服務器能夠返回符合預期的結(jié)果。所以接口測試的原理是模擬客戶端向服務器發(fā)送請求,服務器接收請求并處理后向客戶端返回響應內(nèi)容,客戶端接收響應的過程

三、接口測試方法

接口測試流程:

????????1.根據(jù)接口文檔、需求文檔確認待測接口測試點

????????2.根據(jù)測點制定測試用例

????????3.根據(jù)接口文檔在postman中添加接口

????????4.開始測試線接口測試

????????5.測試線bug提交、跟蹤、關閉

????????6.測試線測試完畢之后,接口上線

????????7.線上驗證完畢,測試完成


在這些流程之中,測試點的提煉和測試用例的編寫是最核心的技能,也是難點。

(1)、測試點的提煉要從幾個方面判斷:

根據(jù)接口的業(yè)務邏輯:

????????1.接口功能是否符合需求文檔。(常用方法:邊界值、等價類)

????????2.返回的response的數(shù)據(jù)格式、參數(shù)名、參數(shù)類型是否與接口需求文檔定義一致。

????????3.接口數(shù)據(jù)的增刪改查

????????4.新舊版本兼容性測試

????????5.默認值測試(例如:某參數(shù)在后臺設置界面為非必填,但接口會一致下發(fā)該字段,這時候就會需要一個默認值,保證接口數(shù)據(jù)正常。)

接口邏輯:

????????接口是否有依賴業(yè)務。(例如:比如修改密碼的接口,必須要在用戶登錄的情況下才允許請求)

異常測試:

????????1.不傳必填參數(shù)

????????2.傳遞錯誤參數(shù)類型

????????3.參數(shù)值為空

????????4.參數(shù)值錯誤

(2)、接口測試用例

確定測試點之后,根據(jù)測試點設計測試用例。接口邏輯相對較少,用例設計相對簡單,具體會放在實例中介紹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容