一 . 介面測驗的定義
1.介面是前后端溝通的橋梁,是資料傳輸通道,包括外部介面、內部介面,內部介面又包括:上層服務與下層服務介面、同級介面;
2.介面是把自己提供給外界的一種抽象化物,使其能被內部修改而不影響外界與其互動的方式;
下面以生活實體舉例說明什么是介面:
電腦上的鍵盤的按鍵就是電腦向人提供的介面,鍵盤上的按鍵(介面),打字時候輸入的qwer(介面的輸入) ,展現在電腦螢屏上的qwer(介面的輸出)
二 . 介面的本質
介面是具有特定輸入和特定輸出的一套邏輯處理單元,也可以理解成它是一種契約,遵循一種形式,在專案開發前期前后端會約定介面接收什么引數,后端處理完之后,回傳什么資料給前端,前后端一起聯調完成系統邏輯的前期預期,提高研發效率
三 . 常見的介面型別
-
HTTP介面:基于超文本傳輸協議(HyperText Transfer Protocol HTTP)開發的介面,是應用最廣泛的網路協議之一,基于瀏覽器/服務器(B/S)的軟體系統大多數為HTTP介面;
-
Web Service介面:系統對外的介面,根據提供的方法參考提供的介面,從而獲取資料;
-
RESTful介面:簡稱REST,描述了一個架構式的網路系統;
-
Dubbo介面:Dubbo是一個分布式、高性能、透明化的RPC服務架構,是阿里巴巴公司開源的一個高性能優秀的服務治理方案,可以理解HTTP是基于客戶端-服務端傳輸,而DUBBO是后端服務與服務之間方法的呼叫,傳輸資訊
四 . HTTP 作業原理
HTTP協議作業于客戶端-服務器(C/S)架構上,瀏覽器作為HTTP客戶端通過URL向HTTP服務端即web服務器發送所有請求,
下面通過一張互聯網架構圖理解HTTP作業原理:

介面發送請求時候的互動原理:客戶端發送網路請求→API網關,網關可能部署在(阿里云,Apache,IIS,nginx等)→再到后端服務services(可能存在多層級的服務)→servies再去資料庫(大資料)獲取資料→資料回傳給客戶端,http默認是持久連接
五 . session與cookie
cookie 是訪問網站的時候,由網站服務器回傳的一種標記為cookie 型別資料;在本地存盤一些網站相關的資訊,下次再訪問的時候減少一些步驟,或者說cookie 是服務器在本地機器上存盤的小段文本并隨每一個請求發送至同一個服務器,是一種在客戶端保持狀態的方案,

由于 HTTP 協議是無狀態的協議,所以服務端需要記錄用戶的狀態時,就需要用某種機制來識具體的用戶,這個機制就是 Session,
cookie是保存在瀏覽器上,可以進行Cookie欺騙相對于session 安全級別比較弱,session是放在服務器端,更加安全;
Session保存在服務端,每個用戶發送請求時產生一個Session,當訪問增多,會比較占用服務器的性能,如果主要考慮到減輕服務器性能方面,應當使用Cookie;
cookie和session應用的場景:
cookie:用戶的登錄狀態,記錄用戶的習慣,購物車;
session:登錄驗證;
六 . 介面測驗的定義
介面測驗是基于協議進行測驗的,實際上是黑盒測驗,基本的測驗思路是通過輸入和輸出判斷被測系統或者物件的邏輯,為什么說介面是黑盒測驗,因為介面是具有特定輸入和特定輸出的一套邏輯處理單元,測驗介面時候不需要知道它的內部實作邏輯
七 . 介面測驗的意義
介面測驗是測驗工程師的必修課:如果不會介面測驗,自動化更別提了, 領導也不相信你會把自動化測驗能做好,然后會搭建介面自動化測驗框架,也是你能力體現的一個分水嶺
介面測驗的好處:
-
越早發現bug,修復的成本越低--出自《軟體測驗的藝術》,介面測驗使“測驗更早的投入”變成現實,更能更好的保證軟體質量
-
介面測驗可以測驗一些界面測驗無法測驗的范圍,
-
介面測驗直接測驗后端服務,能發現影響范圍更廣的bug
-
介面測驗更容易與自動化測驗系統或者平臺結合,比如UI自動化+介面自動化=一體化
八 . 介面的請求方法
http協議里定義了一些請求的方法或者叫動詞,這些方法和動詞可以進一步定義請求的目的,比如是獲取資源還是創建資源等;常用的是GET,POST,
在介面測驗中,一般來說,post創建資料,get獲取創建成功后的所有資料和指定的資料,put可以對創建成功后的資料進行修改,delete是洗掉指定的資源,以下是介面請求方法串列:

九 . 介面常見回應狀態碼
-
200 是成功
-
302 重定向
-
400 服務器未做任何處理
-
401 被請求的頁面需要賬號密碼
-
403 沒有權限
-
404 服務器找不到被請求的資源
-
500 請求未完成,服務器遇到不可預知錯誤
OK,我們理解了介面和介面測驗的意義之后,接下來我們就可以著手于介面測驗了,后面會分別分享 介面測驗專案實操,如何用介面測驗工具進行介面測驗、基于python語言進行介面測驗、搭建介面自動化測驗框架思路,文章首發于公眾號:程式員一凡,感謝大家持續關注我們,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/226379.html
標籤:其他
下一篇:MongoDB入門(介紹、安裝)
