天天看點

看了很多文章,就這篇說明白了什麼是接口測試(含視訊教程)

看了很多文章,就這篇說明白了什麼是接口測試(含視訊教程)

接口(API)是一個簡稱,全名叫應用程式程式設計接口(Application Programming Interface),是一些預先定義的函數。目的是提供應用程式與開發人員基于某軟體或硬體得以通路一組例程的能力,而又無需通路源碼,或了解内部工作機制的細節。

工作中的接口如打電話的按鍵,電梯中的樓層按鍵,開車時腳踩油門,接口就是一個位于複雜系統之上并且能簡化你的任務,它就像一個中間人讓你不需要了解詳細的所有細節,我們今天要講的Web API就是這麼一類東西。

例如百度搜尋,它提供了搜尋接口,簡化了你的搜尋任務

越底層發現bug,它的修複成本是越低的,接口屬于金字塔模型 的中間層,屬于收益産出比最高的

金字塔模型

前端随便變,接口測好了,後端不用變

檢查系統的安全性,穩定性

系統複雜度上升,傳統測試方法成本加大,效率降低,接口可以 解決這個問題

前後端架構分離,從安全層面說

隻依賴前端進行驗證已經不能滿足安全的需求,因為繞過前 端太容易,要對接口做控制,做相應的校驗

前後端傳輸,日志列印等資訊是否加密傳輸也是需要驗證的,特别是密碼,身份證,銀行卡資訊等。

接口測試的原理是什麼呢?

測試人員可以借助工具模拟用戶端向伺服器端發送請求封包,伺服器端接收請求封包後,對相應的封包做出處理并向用戶端傳回應答,工具模拟用戶端接收應答,然後測試人員檢查應答是否準确,這就是接口測試的原理。

接口測試的範圍有哪些呢?

關于接口的測試的範圍,主要從以下兩個方面進行介紹。

1、是否所有的接口都需要測試?

随着系統複雜度越來越高,接口越來越多,想完全覆寫所有接口是一件很困難的事情。

通常情況下,主要測試最外層的兩類接口:資料進入系統的接口(調用外部系統的參數為本系統使用)和資料流出系統的接口(驗證系統處理後的資料是否正常)

2、被測接口需要測試哪些方面?

測試人員需要關注被測接口的功能是否實作,性能是否達标,安全性是否滿足,重點關注資料的交換,傳遞,處理次數以及控制管理的過程。

接口的分類?

依據所遵循協定的不同,常見接口可以分為以下三類。

HTTP接口,他是基于超文本傳輸協定開發的接口,但并不能排 除沒有使用其他協定

WebService接口,他是系統對外的接口,比如你要從别的網站或伺服器上擷取資源,一般來說,别人不會把資料共享給你的,他們會提供一個他們寫好的方法,讓外部人員擷取資料,進而達到資料同步的目的。

RESTful接口,簡稱REST其描述了一個架構樣式的網絡系統,核心是面向資源。REST專門針對網絡應用設計和開發方式,降低開發的複雜性,提供系統的可伸縮性。

基于B/S架構的軟體系統接口大多數為HTTP接口

接口測試流程?

1、編寫接口測試計劃

接口測試計劃跟功能測試計劃是一樣的,都是為了确認是否滿足需求,确定測試環境及測試計劃,為設計測試用例做準備,一般來說,接口測試計劃包含概述,測試資源,測試功能及重點,測試政策,測試風險及測試标準

2、編寫,評審接口測試用例

根據需求文檔,接口文檔寫測試用例,然後開發,測試一起評審測試用例是否符合需求和相關要求。下面的圖裡面的内容可以供大家寫測試用例的時候參考。

3、執行接口測試

執行接口測試的時候,可以借助已經開發好的工具,如比較主流Jmeter,Postman,SoapUI,或者直接自己寫代碼進行相應的接口測試。

4、接口自動化測試持續內建

第一,流程方面,在回歸階段加強異常場景的覆寫,并逐漸向系統測試,冒煙測試階段延伸,最終達到全流程自動化。

第二,結果展示,更加豐富的結果展示,趨勢分析,品質統計和分析等

第三,問題定位,報錯資訊,日志更精準,友善問題複現與定位

第四,結果校驗,加強自動化校驗能力,如資料庫資訊校驗。

第五,代碼覆寫率,不斷嘗試由目前的黑盒向白盒下探,提供代碼覆寫率。

第六,性能需求,完善性能測試體系,通過自動化的手段監控接口性能名額是否正常

小編今天就介紹到這裡,希望對你有所幫助,如果大家有什麼補充的可以留言,互相探讨(^U^)ノ~Y

https://www.bilibili.com/video/BV1Lp4y1B7oT

接口測試視訊教程傳送門

微信公衆号:程式員一凡