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

接口(API)是一個簡稱,全名叫應(yīng)用程序編程接口(Application Programming Interface),是一些預(yù)先定義的函數(shù)。目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。

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

例如百度搜索,它提供了搜索接口,簡化了你的搜索任務(wù)

越底層發(fā)現(xiàn)bug,它的修復(fù)成本是越低的,接口屬于金字塔模型 的中間層,屬于收益產(chǎn)出比最高的

金字塔模型

前端隨便變,接口測好了,后端不用變

檢查系統(tǒng)的安全性,穩(wěn)定性

系統(tǒng)復(fù)雜度上升,傳統(tǒng)測試方法成本加大,效率降低,接口可以 解決這個問題

前后端框架分離,從安全層面說

只依賴前端進(jìn)行驗證已經(jīng)不能滿足安全的需求,因為繞過前 端太容易,要對接口做控制,做相應(yīng)的校驗

前后端傳輸,日志打印等信息是否加密傳輸也是需要驗證的,特別是密碼,身份證,銀行卡信息等。

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

測試人員可以借助工具模擬客戶端向服務(wù)器端發(fā)送請求報文,服務(wù)器端接收請求報文后,對相應(yīng)的報文做出處理并向客戶端返回應(yīng)答,工具模擬客戶端接收應(yīng)答,然后測試人員檢查應(yīng)答是否準(zhǔn)確,這就是接口測試的原理。

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

關(guān)于接口的測試的范圍,主要從以下兩個方面進(jìn)行介紹。

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

隨著系統(tǒng)復(fù)雜度越來越高,接口越來越多,想完全覆蓋所有接口是一件很困難的事情。

通常情況下,主要測試最外層的兩類接口:數(shù)據(jù)進(jìn)入系統(tǒng)的接口(調(diào)用外部系統(tǒng)的參數(shù)為本系統(tǒng)使用)和數(shù)據(jù)流出系統(tǒng)的接口(驗證系統(tǒng)處理后的數(shù)據(jù)是否正常)

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

測試人員需要關(guān)注被測接口的功能是否實現(xiàn),性能是否達(dá)標(biāo),安全性是否滿足,重點關(guān)注數(shù)據(jù)的交換,傳遞,處理次數(shù)以及控制管理的過程。

接口的分類?

依據(jù)所遵循協(xié)議的不同,常見接口可以分為以下三類。

HTTP接口,他是基于超文本傳輸協(xié)議開發(fā)的接口,但并不能排 除沒有使用其他協(xié)議

WebService接口,他是系統(tǒng)對外的接口,比如你要從別的網(wǎng)站或服務(wù)器上獲取資源,一般來說,別人不會把數(shù)據(jù)共享給你的,他們會提供一個他們寫好的方法,讓外部人員獲取數(shù)據(jù),從而達(dá)到數(shù)據(jù)同步的目的。

RESTful接口,簡稱REST其描述了一個架構(gòu)樣式的網(wǎng)絡(luò)系統(tǒng),核心是面向資源。REST專門針對網(wǎng)絡(luò)應(yīng)用設(shè)計和開發(fā)方式,降低開發(fā)的復(fù)雜性,提供系統(tǒng)的可伸縮性。

基于B/S架構(gòu)的軟件系統(tǒng)接口大多數(shù)為HTTP接口

接口測試流程?

1、編寫接口測試計劃

接口測試計劃跟功能測試計劃是一樣的,都是為了確認(rèn)是否滿足需求,確定測試環(huán)境及測試計劃,為設(shè)計測試用例做準(zhǔn)備,一般來說,接口測試計劃包含概述,測試資源,測試功能及重點,測試策略,測試風(fēng)險及測試標(biāo)準(zhǔn)

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

根據(jù)需求文檔,接口文檔寫測試用例,然后開發(fā),測試一起評審測試用例是否符合需求和相關(guān)要求。下面的圖里面的內(nèi)容可以供大家寫測試用例的時候參考。

3、執(zhí)行接口測試

執(zhí)行接口測試的時候,可以借助已經(jīng)開發(fā)好的工具,如比較主流Jmeter,Postman,SoapUI,或者直接自己寫代碼進(jìn)行相應(yīng)的接口測試。

4、接口自動化測試持續(xù)集成

第一,流程方面,在回歸階段加強(qiáng)異常場景的覆蓋,并逐步向系統(tǒng)測試,冒煙測試階段延伸,最終達(dá)到全流程自動化。

第二,結(jié)果展示,更加豐富的結(jié)果展示,趨勢分析,質(zhì)量統(tǒng)計和分析等

第三,問題定位,報錯信息,日志更精準(zhǔn),方便問題復(fù)現(xiàn)與定位

第四,結(jié)果校驗,加強(qiáng)自動化校驗?zāi)芰Γ鐢?shù)據(jù)庫信息校驗。

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

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

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

視頻教學(xué)傳送門:

阿里面試官:你說一下Python接口測試,這樣回答讓他豎起大拇指!

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

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