是时候扔掉 Postman 了,Apifox 真香!
作為開軟件開發(fā)從業(yè)者,接口調(diào)試是必不可少的一項技能,我們經(jīng)常使用 Postman 工具來進行接口調(diào)試,在接口調(diào)試方面 Postman 做的非常出色。但是在整個軟件開發(fā)過程中,接口調(diào)試只是其中的一部分,還有很多事情 Postman 無法完成,或者無法高效完成,比如:接口文檔定義、Mock 數(shù)據(jù)、接口自動化測試等等。
接口管理現(xiàn)狀
一、常用解決方案
使用 Swagger 管理接口文檔
使用 Postman 調(diào)試接口
使用 RAP Mock 數(shù)據(jù)
使用 JMeter 做接口自動化測試
二、存在的問題
維護不同工具之間數(shù)據(jù)一致性非常困難、非常低效。并且這里不僅僅是工作量的問題,更大的問題是多個系統(tǒng)之間數(shù)據(jù)不一致,導致協(xié)作低效,頻繁出問題,開發(fā)人員痛苦不堪。
開發(fā)人員在 Swagger 定義好文檔后,接口調(diào)試的時候還需要去 Postman 再定義一遍。
前端開發(fā) Mock 數(shù)據(jù)的時候又要去 RAP 定義一遍,手動設置好 Mock 規(guī)則。
測試人員需要去 JMeter 定義一遍。
前端根據(jù) RAP Mock 出來的數(shù)據(jù)開發(fā)完,后端根據(jù) Swagger 定義的接口文檔開發(fā)完,各自測試測試通過了,本以為可以馬上上線,結(jié)果一對接發(fā)現(xiàn)各種問題:原來開發(fā)過程中接口變更,只修改了 Swagger,但是沒有及時同步修改 RAP。
同樣,測試在 JMeter 寫好的測試用例,真正運行的時候也會發(fā)現(xiàn)各種不一致。
時間久了,各種不一致會越來越嚴重。
Apifox 解決方案
一、如何解決這些問題
1、Apifox 定位
Apifox = Postman + Swagger + Mock + JMeter
通過一套系統(tǒng)、一份數(shù)據(jù),解決多個系統(tǒng)之間的數(shù)據(jù)同步問題。只要定義好接口文檔,接口調(diào)試、數(shù)據(jù) Mock、接口測試就可以直接使用,無需再次定義;接口文檔和接口開發(fā)調(diào)試使用同一個工具,接口調(diào)試完成后即可保證和接口文檔定義完全一致。高效、及時、準確!
2、Apifox ?功能
接口文檔定義:Apifox 遵循 OpenApi 3.0 (原Swagger)、JSON Schema 規(guī)范的同時,提供了非常好用的可視化文檔管理功能,零學習成本,非常高效。
接口調(diào)試:Postman 有的功能,比如環(huán)境變量、預執(zhí)行腳本、后執(zhí)行腳本、Cookie/Session 全局共享 等功能,Apifox 都有,并且和 Postman 一樣高效好用。
數(shù)據(jù) Mock:內(nèi)置 Mock.js 規(guī)則引擎,非常方便 mock 出各種數(shù)據(jù),并且可以在定義數(shù)據(jù)結(jié)構(gòu)的同時寫好 mock 規(guī)則。支持添加“期望”,根據(jù)請求參數(shù)返回不同 mock 數(shù)據(jù)。最重要的是 Apifox 零配置 即可 Mock 出非常人性化的數(shù)據(jù),具體在本文后面介紹。
接口自動化測試:提供接口集合測試,可以通過選擇接口(或接口用例)快速創(chuàng)建測試集。目前接口自動化測試更多功能還在開發(fā)中,敬請期待!目標是:JMeter 有的功能基本都會有,并且要更好用。
二、Apifox 做的不僅僅是數(shù)據(jù)打通
如果你認為 Apifox 只做了數(shù)據(jù)打通,來提升研發(fā)團隊的效率,那就錯了。Apifox 還做了非常多的創(chuàng)新,來提升開發(fā)人員的效率。
1、調(diào)試時自動校驗數(shù)據(jù)結(jié)構(gòu)
使用 Apifox 調(diào)試接口的時候,系統(tǒng)會根據(jù)接口文檔里的定義,自動校驗返回的數(shù)據(jù)結(jié)構(gòu)是否正確,無需通過肉識別,也無需手動寫斷言腳本檢測,非常高效!
自動校驗數(shù)據(jù)結(jié)構(gòu)
2、數(shù)據(jù)模型定義、引用
可以獨立定義數(shù)據(jù)模型,接口定義時可以直接引用數(shù)據(jù)模型,數(shù)據(jù)模型之間也可以相互引用。同樣的數(shù)據(jù)結(jié)構(gòu),只需要定義一次即可多處使用;修改的時候只需要修改一處,多處實時更新,避免不一致。
3、接口用例管理
通常一個接口會有多種情況用例,比如 正確用例參數(shù)錯誤用例數(shù)據(jù)為空用例不同數(shù)據(jù)狀態(tài)用例。定義接口的時候定義好這些不同狀態(tài)的用例,接口調(diào)試的時候直接運行,非常高效。
4、零配置 Mock 出非常人性化的數(shù)據(jù)
先放一張圖對比下 Apifox 和其他同類工具 零配置 mock 出來的數(shù)據(jù)效果:
Apifox 和其他同類工具 Mock 數(shù)據(jù)對比
可以看出 Apifox 零配置 Mock 出來的數(shù)據(jù)和真實情況是非常接近的,前端開發(fā)可以直接使用,而無需再手動寫mock規(guī)則。
Apifox 如何做到高效率、零配置生成非常人性化的 mock 數(shù)據(jù):
Apifox 根據(jù)接口定義里的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類型,自動生成 mock 規(guī)則。
Apifox 內(nèi)置智能 mock 規(guī)則庫,根據(jù)字段名、字段數(shù)據(jù)類型,智能優(yōu)化自動生成的 mock 規(guī)則。如:名稱包含字符串image的string類型字段,自動 mock 出一個圖片地址 URL;包含字符串time的string類型字段,自動 mock 出一個時間字符串;包含字符串city的string類型字段,自動 mock 出一個城市名。
Apifox 根據(jù)內(nèi)置規(guī)則,可自動識別出圖片、頭像、用戶名、手機號、網(wǎng)址、日期、時間、時間戳、郵箱、省份、城市、地址、IP等字段,從而 Mock 出非常人性化的數(shù)據(jù)。
除了內(nèi)置 mock 規(guī)則,用戶還可以自定義規(guī)則庫,滿足各種個性化需求。支持使用 正則表達式、通配符 來匹配字段名自定義 mock 規(guī)則。
5、代碼自動生成
根據(jù)接口模型定義,自動生成各種語言/框架(如 TypeScript、Java、Go、Swift、ObjectiveC、Kotlin、Dart、C++、C#、Rust 等)的業(yè)務代碼(如 Model、Controller、單元測試代碼等)和接口請求代碼。目前 Apifox 支持 130 種語言及框架的代碼自動生成。
更重要的是:你可以通過自定義代碼模板來生成符合自己團隊的架構(gòu)規(guī)范的代碼,滿足各種個性化的需求。
6、導入、導出
支持導出 OpenApi (原Swagger)、Markdown、Html 等數(shù)據(jù)格式,因為可以導出OpenApi格式數(shù)據(jù),所以你可以利用 OpenApi (Swagger) 豐富的生態(tài)工具完成各種接口相關的事情。
支持導入 OpenApi格式(原Swagger)、Postman、HAR、RAP2、yapi、Eolinker、DOClever、ApiPost 、Apizza 等數(shù)據(jù)格,方便遷移舊項目。
三、更多 Apifox 功能截圖
接口調(diào)試
預執(zhí)行、后執(zhí)行腳本
接口文檔定義
數(shù)據(jù)模型定義
查看接口文檔
查看數(shù)據(jù)模型
接口集合測試
接口集合測試結(jié)果
接口集合測試結(jié)果詳情
自定義 Mock 期望
根據(jù)參數(shù)不同 Mock 出不同的數(shù)據(jù)
默認 Mock 規(guī)則配置
業(yè)務代碼自動生成
接口請求代碼自動生成
導入、導出數(shù)據(jù)
支持暗色、亮色,以及多種主題色可選
四、Apifox 官網(wǎng)地址
Apifox 官網(wǎng):apifox.cn
技術(shù)交流群
最近有很多人問,有沒有讀者交流群,想知道怎么加入。
最近我創(chuàng)建了一些群,大家可以加入。交流群都是免費的,只需要大家加入之后不要隨便發(fā)廣告,多多交流技術(shù)就好了。
目前創(chuàng)建了多個交流群,全國交流群、北上廣杭深等各地區(qū)交流群、面試交流群、資源共享群等。
有興趣入群的同學,可長按掃描下方二維碼,一定要備注:全國 Or 城市 Or 面試 Or 資源,根據(jù)格式備注,可更快被通過且邀請進群。
▲長按掃描
往期推薦MySQL 默認隔離級別是RR,為什么阿里等大廠會改成RC?
朝陽群眾盯上了望京A座?舉報996造成交通嚴重堵塞
繼領英后,又一家科技公司宣布離開中國!
如果你喜歡本文,
請長按二維碼,關注?Hollis.
轉(zhuǎn)發(fā)至朋友圈,是對我最大的支持。
點個?在看?
喜歡是一種感覺
在看是一種支持
↘↘↘
總結(jié)
以上是生活随笔為你收集整理的是时候扔掉 Postman 了,Apifox 真香!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Chrome、Edge 合力围剿,Saf
- 下一篇: 美国国家安全局是如何入侵你的电脑的?