作為一位後端開發,我們平時經常需要維護API文件、對API介面進行除錯、有時候還得Mock資料。Postman雖然作為介面除錯工具非常好用,但是對於維護API文件這類工作卻不太合適。今天給大家推薦一款功能更強大的工具Apifox,足以滿足我們對API的各種需求,希望對大家有所幫助!
SpringBoot實戰電商專案mall(50k+star)地址:https://github.com/macrozheng/mall
Apifox簡介
Apifox 的定位是Postman + Swagger + Mock + JMeter
,具有API文件管理、API除錯、API Mock、API 自動化測試等功能。可以通過一種工具解決之前使用多種工具的資料同步問題。高效、及時、準確!
安裝
- Apifox的安裝非常方便,直接下載安裝包解壓安裝即可,下載地址:https://www.apifox.cn/
- 官方非常貼心地提供了
示例專案
,直接開啟即可體驗Apifox的功能,看下介面還是很漂亮的;
- 我們自己使用的話首先需要
新建團隊
,便於團隊成員之間協同工作;
- 然後在團隊中
新建專案
,新建成功後我們就可以開始使用Apifox的強大功能了!
API文件匯入
Apifox的API文件匯入功能非常強大,支援包括Swagger、Postman、YApi、ShowDoc等多達20種工具的匯入。接下來我們通過使用之前mall-tiny-swagger
專案中的介面,來體驗下它的匯入功能!
- 首先我們選擇
新建介面
按鈕,選擇匯入
;
- 然後開啟匯入介面,選擇
Swagger->URL匯入
,輸入Swagger的資料URL;
- 匯入時將顯示
匯入預覽
,顯示要匯入的介面
和資料模型
,Apifox將會把我們介面返回的實體類轉換為資料模型,以便進行復用;
- 匯入成功後介面效果如下,Apifox將檢視文件和修改文件做了區分,方便我們管理介面文件。
介面管理
雖然從Swagger中匯入的介面文件已經很詳細了,但是為了體驗Apifox更為強大的功能,我們有時候還是需要編輯下介面資訊的。
介面設計
- 看下Apifox的請求引數介面,非常詳細!
- 再看下Apifox返回結果介面,支援摺疊,這個很多工具都是沒有的;
- 再看下Apifox的
修改文件
介面,支援新增狀態、分組和標籤。
介面除錯
我們再來體驗下Apifox的除錯功能,比Postman更強大!
- 在我們開發介面時,很多時候需要分不同的環境,Apifox預設給我們分了
測試環境
、正式環境
、Mock服務
,這三個基本也夠用了;
- 在除錯介面之前,我們得先設定好環境所對應的
前置URL
,比如這裡我們設定了測試環境
的;
- 在Apifox中我們可以使用
介面用例
來除錯我們的介面,介面用例可以儲存我們輸入的引數,以便之後測試使用;
- Apifox支援在介面呼叫前後做自定義操作,比如我們可以在
後置操作
中新增一個斷言
,返回結果中code等於200
表示操作成功;
- 此時我們輸錯密碼來呼叫下介面,斷言會直接提示我們結果和預期不符合;
- 有些介面我們需要傳入
Authorization
頭才能訪問;
- 這種訪問我們可以通過
環境變數
來實現,首先在登入介面中新增後置操作
,選擇提取變數
,將返回的token提取到環境變數AUTH_TOKEN
中;
- 然後修改介面文件,在
Header
中設定需要傳入Authorization
頭;
- 接下來在
介面用例
中通過表示式使用Authorization
頭即可正常訪問需要登入認證的介面了。
使用指令碼
Apifox的自定義前置操作
和後置操作
非常強大,不僅支援簡單的斷言
和提取變數
,還能支援編寫JS指令碼。
- 例如之前我們判斷操作成功,斷言
code等於200
可以使用指令碼這樣實現;
- 此時我們輸錯密碼來呼叫下介面,斷言會直接提示我們結果和預期不符合。
Mock資料
在我們後端介面沒有開發完成,前端開發需要資料時,往往可以通過Mock來提供資料,Apifox的Mock資料功能也是很強大的。
- Apifox號稱能根據你資料模型中的欄位名稱
智慧Mock
,讓我們來看看它的規則;
- 其實預設的Mock規則有時候並不是很完善,比如我們來看下它Mock的資料;
- 此時我們可以在
資料模型
中修改,可以讓Mock的資料更加人性化一點,比如我們可以將各種狀態設定為列舉型別;
- 還可以將logo欄位通過
@image
這種方式設定為圖片型別;
- 重新設定一下之後,人性化多了;
- 接下來只需把環境改為
Mock服務
就可以呼叫Mock資料的介面了!
測試管理
Apifox不僅能支援介面除錯,還支援建立測試用例進行批量測試以及效能測試。
- 首先我們可以在
測試管理
中建立測試用例;
- 之後選擇
從介面用例匯入
,選擇好需要匯入的介面用例;
- 選擇好
執行環境
後,點選執行進行批量測試;
- 測試完成後即可顯示測試報告;
- 如果你想進行效能測試的話,在測試介面選擇好
執行緒數
即可;
- 測試完成後,可以通過
匯出報告
來檢視更為詳細的報告資訊。
主題設定
個人比較習慣暗色
主題,Apifox也是可以選擇亮色
主題和主色的,直接在設定中可以進行切換。
總結
Apifox確實是一款介面漂亮、功能強大的API介面工具。Postman有的介面除錯功能它基本都有,還整合了介面文件管理、資料Mock、自動化測試等功能,強烈建議大家嘗試下!
參考資料
官方文件:https://www.apifox.cn/help/
專案原始碼地址
https://github.com/macrozheng...
本文 GitHub https://github.com/macrozheng/mall-learning 已經收錄,歡迎大家Star!