目錄:
一、什么是介面?
二、介面測驗流程
三、介面測驗工具
四、介面測驗技術點
五、總結
導讀:
為什么要做介面測驗
介面測驗本質上是功能測驗的一種,屬于后端服務器測驗,但是它的影響范圍要遠廣于web,app層面,原因很簡單,因為目前很多公司,服務架構都是多端共用一套介面,和用戶直接互動的UI界面,web,app,小程 序,H5,它們有可能都是公用一套介面邏輯,后端如果服 務器掛了,或者出bug了,這些終端可能都會出問題,所以,做介面測驗就非常有必要的,重要性:
1.越底層發現bug,它的修復成本是越低的,
2.前端隨便變,介面測好了,后端不用變,前后端是兩撥人開發的,
3.檢查系統的安全性、穩定性,前端傳參不可信,比如京東購物,前端價格不可能傳入-1元,但是通過介面可以傳入-1元,
4.如今的系統復雜度不斷上升,傳統的測驗方法成本急劇增加且測驗效率大幅下降,介面測驗可以提供這種情況下的解決方案,
5. 介面測驗相對容易實作自動化持續集成,且相對UI自動化也比較穩定,可以減少人工回歸測驗人力成本與時間,縮短測驗周期,支持后端快速發版需求,介面持續集成是為什么能低成本高收益的根源,
6. 現在很多系統前后端架構是分離的,從安全層面來說:
(1)只依賴前端進行限制已經完全不能滿足系統的安全要求(繞過前面實在太容易), 需要后端同樣進行控制,在這種情況下就需要從介面層面進行驗證,( 想了解更多測驗內容,加入我們,642830685,免費領取最新軟體測驗大廠面試資料和Python自動化、介面、框架搭建學習資料!技術大牛解惑答疑,同行一起交流)
(2)前后端傳輸、日志列印等資訊是否加密傳輸也是需要驗證的,特別是涉及到用戶的隱私資訊,如身份證,銀行卡等,

一、什么是介面
介面測驗是目前測驗的主流手段之一,采用介面測驗也有許多優點:
1.提高測驗效率:可通過自動化手段實作重復驗證,也可以在依賴服務沒有開發完成時優先測驗部分服務
2.方便定位Bug:通過介面的抓包和分析,可以清楚的知道問題是來源于前端還是后臺服務
3.提高服務端健壯性:通過介面測驗可以測出來開發是否在后端做了校驗,幫助提高服務的健壯性
對很多新手來說介面測驗很高大上,但實際上介面測驗很簡單,掌握關鍵技術以后就可以把介面測驗應用到日常作業中,開始講解介面測驗之前,先看看當你在瀏覽器中輸入地址,并看到Web頁面的時候底層問題:
1.瀏覽器根據輸入把請求發送到服務器
2.服務器獲取到請求以后生成回應檔案,把回應檔案發送給瀏覽器
3.瀏覽器決議回應,渲染資料生成Web頁面的展示效果

說了這么多,介面測驗到底有重要呢,那么作為小白應該如何學習介面測驗呢?
重點來了
首先你要學習網路協議知識,因為大部分介面都是基于http協議的,當然還有其它的比如dubbo協議,
其次你需要學習兩款測驗工具,postman用來呼叫介面,fiddler用來抓包定位bug,當然,你使用瀏覽器自帶的F12也是可以的,
二、介面測驗流程
介面測驗流程和手動測驗/UI測驗流程類似,但是側重點不同:
需求分析:需求檔案 VS 介面檔案,
撰寫和評審用例:根據需求變更結合業務優先級,邊界值等價類等分析方法設計手動測驗用例;根據介面的引陣列合以及介面的預期回傳設計介面測驗用例,
準備測驗環境和測驗腳本:介面測驗需選擇合適的工具實作步驟2中評審的用例,
執行測驗用例,發送測驗報告:介面測驗自動運行腳本,生成和發送測驗報告,
三、介面測驗工具
介面測驗的實作有多種工具,可根據團隊情況選型:
Postman:谷歌提供的開源介面測驗工具,支持Http介面的呼叫和驗證
Jmeter:Apache提供的開源介面測驗工具,除了支持Http介面還有很多擴展功能(Mysql,Redis,RabbitMQ…)
Fiddler:抓包工具,常用于介面分析以及Mobile端介面自動化
HttpComponents:Apache提供的開源包,可以基于它實作介面代碼的編碼

四、介面測驗技術點
介面測驗最常用的技術點:
1.引數化:自動生成不同的介面資料,或者符合后端服務校驗規約的介面資料(eg: 手機號,身份證,郵箱,用戶姓名)
2.斷言:驗證介面的回傳,包括回應碼,回應欄位的校驗(Json報文,HTML或XML報文)
3.關聯:多介面測驗時,不同介面間的引數傳遞
4.資料庫:除了驗證相應報文,還可驗證資料庫欄位確保程式邏輯的正確性
5.持續集成:介面工具或框架和Jenkins等持續集成工具的結合,實作無人值守或者自動觸發

以上就是一個簡單的介面測驗涉及到的方方面面,小伙伴們在日常作業中可以按這個思路開啟介面測驗之路,并不斷豐富總結自己對介面測驗工具,知識點以及流程的靈活應用,為什么讓大家一定要掌握好介面測驗?
原因也簡單,因為它是你后續深入進階學習自動化和性能測驗的基礎,拿介面自動化來說,這是目前公司使用性價比最高的自動化,原因就在于ui自動化成本太高,經常頁面大改,可能整個框架就廢了,所以很多公司都優先做介面自動化,比較穩定,目前需求最多的,所以找作業,優先學習掌握介面自動化,
五、總結:
介面測驗不僅僅是你找作業的必備技能,更是你以后深入學習自動化以及性能測驗的基礎,除非,你想一直做點點點工程師,不然自動化測驗和性能測驗重要性不言而喻,當然,也不是你想點就一直能點的,非常容易就被淘汰!
希望本文對你有所幫助,想要了解更多,可以加入我們哦

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/79387.html
標籤:Python
上一篇:機器學習:K近鄰演算法(KNN)
