Web API01-初識接口測試

市面上有許多種風(fēng)格的Web API,目前最流行也最容易訪問的一種風(fēng)格是基于REST風(fēng)格的API,后續(xù)的文章主要以REST API接口進(jìn)行講解。本篇文章主要就“接口測試相關(guān)知識”進(jìn)行展開講解,包括接口測試相關(guān)概念,測試的內(nèi)容,使用的工具以及一個(gè)簡單的實(shí)例化接口測試和接口測試質(zhì)量標(biāo)準(zhǔn)等。希望感興趣的小伙伴可以堅(jiān)持看下去同時(shí)歡迎提出寶貴的意見讓我們一起進(jìn)步!

01:接口的相關(guān)概念(API)

1)接口定義:表示某個(gè)對象和外界交互的部分,一個(gè)API就是一個(gè)Interface。

2)接口分類:一個(gè)軟件產(chǎn)品,可能有如下幾種和外界交互的部分。

①提供用戶界面給用戶使用(UI)

②提供消息交互接口和其他應(yīng)用程序交互(基于SOAP的Web ServiceREST API

③提供編程接口,供開發(fā)者的程序調(diào)用

④其他接口

3)Web服務(wù)接口:互聯(lián)網(wǎng)產(chǎn)品對外提供的接口,有Web服務(wù)接口,Web service接口和Web API。

4)注意事項(xiàng):目前REST類型的接口基本上都是基于HTTP協(xié)議

02:接口測試的相關(guān)概念

1)接口測試:是測試系統(tǒng)組件間接口的一種測試。

2)核心功能:構(gòu)建HTTP請求消息解析收到的HTTP響應(yīng)消息

3)使用場景:主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。

4)測試重點(diǎn):檢查數(shù)據(jù)的交換,傳遞和控制管理過程以及系統(tǒng)間的相互邏輯依賴關(guān)系等。

5)QA一定要做Web API測試嗎?一般情況下看該接口是否對外提供

03:如何做接口測試

1)概述:由于前后端調(diào)用主要是基于http協(xié)議的接口,因此通過工具或代碼模擬http請求的發(fā)送與接收

2)常用的第三方工具:postman、jmeter、soupUI

04:后端接口測試的內(nèi)容
接口測試內(nèi)容.png
05:如何做接口測試一個(gè)簡單的實(shí)例化接口測試
增加課程接口文檔內(nèi)容如下所示:
(1)增加課程:用來創(chuàng)建一個(gè)新的培訓(xùn)課程
(2)請求語法:POST /api/mgr/sq_mgr/ HTTP/1.1
(3)內(nèi)容類型:Content-Type:   application/x-www-form-urlencoded
(4)url請求參數(shù):無url請求參數(shù)
(5)請求體內(nèi)容
action  必填  填寫add_course,表明是為了創(chuàng)建課程
data    必填  存儲(chǔ)創(chuàng)建課程的信息,包括名稱、描述、顯示次序。為json格式。例如:
{
  "name":"python",
  "desc":"python基礎(chǔ)課程",
  "display_idx":"4"
}
POST請求接口測試.png
列出課程接口文檔內(nèi)容如下所示:
(1)列出課程:用來列出所有的培訓(xùn)課程
(2)請求語法:GET /api/mgr/sq_mgr/?action=list_course&pagenum=1&pagesize=20 HTTP/1.1
(3)url請求參數(shù):
action   填寫list_course,表明是要列出所有課程信息
pagenum  表示當(dāng)前要顯示的是第幾頁,目前固定填寫1
pagesize 表示一頁最多顯示多少條課程信息,目前固定填寫20
(4)請求體內(nèi)容:無
GET請求接口測試.png
06:接口測試持續(xù)集成

對接口測試而言,持續(xù)集成自動(dòng)化是核心內(nèi)容。通過持自動(dòng)化的手段我們才能做到低成本高收益。包括但不限于:

①流程方面:回歸階段加強(qiáng)接口異常場景的覆蓋度,最終實(shí)現(xiàn)全流程自動(dòng)化

②結(jié)果展示:更加豐富的結(jié)果展示、趨勢分析、質(zhì)量統(tǒng)計(jì)和分析

③問題定位:報(bào)錯(cuò)信息,日志更精準(zhǔn),方便問題復(fù)現(xiàn)與定位。

④結(jié)果校驗(yàn):加強(qiáng)自動(dòng)化校驗(yàn)?zāi)芰?/strong>

⑤代碼覆蓋率:不斷嘗試由目前的黑盒向白盒下探,提高代碼覆蓋率。

⑥性能需求:完善性能測試體系,通過自動(dòng)化的手段監(jiān)控接口性能指標(biāo)是否正常。

07:接口測試質(zhì)量標(biāo)準(zhǔn)

業(yè)務(wù)功能覆蓋是否完整
參數(shù)驗(yàn)證是否達(dá)到要求(邊界,業(yè)務(wù)規(guī)則)
接口異常場景覆蓋是否完整
接口覆蓋率是否達(dá)到要求
代碼覆蓋率是否達(dá)到要求
性能指標(biāo)是否滿足要求
安全指標(biāo)是否滿足要求

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

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

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