
介面測驗系列
為什么要做這個事情? 對自己過往在介面測驗上的經驗,寫一個小結的還有對于自己同事的這件事感到無能為力,希望寫出這篇文章能給你們帶來一點點幫助,這篇博文寫的是一個系統性的思考和知識構建,發布的同時,也是希望獲得更多感興趣的同學的意見和反饋,可以把這個部分做的更好,【結尾有學習資料分享】
介面測驗概述
什么是介面
現在的專案中基本是構建在各種API中,有自己提供的API,有呼叫別人的API,API就像是鑰匙,每個門都需要鑰匙去打開,要想去打開門,沒有鑰匙怎么行呢,所以API之所以重要,就是因為它是網路世界的通行證,
對于程式來說,API就是提供給被人呼叫的方式,它會規定應該怎么使用,其中包括:協議,地址,引數和回應等,
為什么要進行介面測驗
介面在微服務流行的當下,地位是非常重要的,因為服務跟服務之間,都是用介面進行的互動,而對于測驗來說,UI是不穩定的,單元測驗很多是開發負責,而介面是切入點更合適,穩定性更好的一種測驗方式,這種測驗方式的優勢就在于成本和收益的平衡,既不用花去很多成本看不到收益,又可以很好的體現出對于質量的把控,所以,介面測驗在當下的測驗行內來說,是恰當的存在,
介面測驗的分類
介面測驗從協議上來說,可以分成下面幾類:
TCP協議介面
HTTP協議介面
RPC協議介面
TCP協議其實就是socket介面,一般在企業級開發中很少碰到,HTTP協議,這是最常見也是最重要的,里面涉及到很多使用細節,后面會詳細講述,RPC協議,常見的有Dubbo和其他自研的RPC協議,一般都是構建在TCP或者HTTP之上的,這種協議的特點就是有自己的一套架構,使用他們提供的架構進行測驗就可以了,很多需要自己寫代碼進行測驗,
收益
對于介面測驗的收益,可以從兩方面進行衡量,一個是介面的覆寫程度,一個是介面測驗的效果,覆寫程度很好理解,就是多少場景覆寫,效果的衡量就不是那么好做了,一般是用代碼覆寫率和每次發布自動化測驗程度進行衡量,

介面測驗工具介紹
現在市面上的介面測驗基本上是兩種:介面測驗產品和介面測驗平臺,介面測驗產品有postman,jmeter,charles等都是目前比較主流的,而介面測驗平臺基本上是自研或者開源的平臺產品,在此我比較推薦的是YAPI,能想到的介面測驗的功能基本上都有,
工具比較
下面我們對常用的工具進行一個簡要的說明,其實不是一個很全面客觀的評測,而是針對自己的理解做了些腳注,
- postman HTTP介面很全面的測驗工具,有引數化、資料驅動、批量執行、自定義斷言,并且可以多端同步,
- jmeter 偏向于性能測驗,也是針對HTTP介面的,有引數化、Hook、批量執行等,基本針對單機版應用場景,配合性能測驗會更適合,
- charles偏向于網路抓包,也是針對HTTP介面,介面測驗功能上稍弱,用的不多,從上面可以看出,postman很適合做HTTP介面的測驗工具,如果有debug需求可以用charles,如果有性能需求可以用jmeter,如果是單純的介面測驗,個人認為postman基本上覆寫了所有場景,后面我也會從場景角度對postman進行深度的剖析,
介面測驗平臺
其實,在介面測驗平臺維度,也有幾個好的產品,我個人比較推崇YAPI,因為他的切入點很好,現在生態也做的比較強大,
從YAPI產品設計的角度說,介面測驗平臺需要解決這么幾個場景:
- 介面檔案可視化,需要在平臺上展示介面檔案,讓開發和測驗有統一的入口
- 平臺支持介面測驗的場景:引數化、資料驅動、斷言等
- 平臺可以提供mock服務和除錯手段
- 協作方式,從專案或者應用角度作為入口,組織介面和測驗用例集合,
當然,除了YAPI,Hitchhiker也是不錯的產品,
干貨分享
下面是我整理出來的一份軟體測驗工程師學習發展方向知識架構體系圖,

上面就是我為大家整理出來的一份軟體測驗工程師學習發展方向知識架構體系圖,希望大家能照著這個體系在3-4個月完成這樣一個體系的構建,可以說,這個程序會讓你痛不欲生,但只要你熬過去了,以后的生活就輕松很多,正所謂萬事開頭難,只要邁出了第一步,你就已經成功了一半,等到完成之后再回顧這一段路程的時候,你肯定會感慨良多,
下方二維碼里大部分資料包括了很多測驗行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程式原理、Mysql資料庫、抓包工具專題、介面測驗工具、測驗進階-Python編程、Web自動化測驗、APP自動化測驗、介面自動化測驗、測驗高級持續集成、測驗架構開發測驗框架、性能測驗、安全測驗,面試技巧等,
如果你測驗中有許多的困惑,將會是你接觸良師益友的有益社區,同行或許可以給你帶來一些實際性的幫助與突破,
想要獲取上方這份學習資料(資料都是免費獲取~)
添加我們的小姐姐vx即可
可不能撩我們的小姐姐哦

小結
這篇文章列出了一些工具和平臺,如果作為一個介面測驗的初學者,大家可以用postman,如果想用平臺方式,讓團隊可以協作的進行介面測驗,建議試下YAPI,
好文推薦
朋友入職位元組跳動拿30k高薪,這份《軟體測驗面試筆記》讓我受益良多
同是IT行業,憑什么做測驗這行會被人覺得沒出息…
本來學的Java、python…沒學好都轉了軟體測驗,丟人嗎!測驗如何工資過萬?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/294887.html
標籤:其他
下一篇:Zookeeper(三)基本使用
