取代 Postman + Swagger!這款神器功能更強,介面更炫酷!

macrozheng發表於2021-11-30
作為一位後端開發,我們平時經常需要維護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的功能,看下介面還是很漂亮的;

  • 我們自己使用的話首先需要新建團隊,便於團隊成員之間協同工作;

  • 然後在團隊中新建專案,新建成功後我們就可以開始使用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!

相關文章