干掉丑陋的swagger,堪稱開發(fā)者的瑞士軍刀!
靜態(tài)的Swagger們跟不上頻繁變更的代碼
“為什么改了這個沒告訴我”,“實際功能和文檔上說的不一樣啊”。這些話大家做開發(fā)的想必耳朵都聽出老繭了。真不是故意的,有時候任務(wù)比較急,就先改了代碼,想著以后再同步文檔,然后就給忘了。項目更新又全靠社交軟件通知,人一多難免有一兩個沒及時溝通到的。確實給合作的小伙伴帶來麻煩,但說實話開發(fā)也挺委屈的。
這些問題產(chǎn)生的主要原因是,當(dāng)前大部分研發(fā)團(tuán)隊的工作流程是這樣的:

這種模式帶來的問題是:
1.Swagger,postman,MockJS只能完成軟件研發(fā)流程中某個環(huán)節(jié)的功能,造成完成接口設(shè)計,文檔編寫,調(diào)試,測試驗證等工作需要使用好幾個工具;
2.更麻煩的是這些工具數(shù)據(jù)格式不互通,無法互相導(dǎo)入,造成用Swagger定義和編寫完成接口后,在Postman,MockJS,Jmeter等工具還要再去手動填寫一遍才能開始工作,增加了無意義的工作量。
3.溝通成本總是被忽略不計,但實際上不僅占據(jù)了很大時間,各種溝通不及時、溝通不到位還非常讓人心累。
4.老板的需求來得急,老板的需求變得快,各種代碼修改和變更難以及時通知和同步到團(tuán)隊成員手中。
抱怨當(dāng)然政治正確,但有啥用,該加的班還是要加。那么有什么辦法可以解決這個問題嗎?
有的。
換個工具。
低成本做長期主義的事情
我為大家提供的解決方案是一款國內(nèi)的生產(chǎn)力工具--Apifox。
作為一款研發(fā)全流程,接口全周期的生產(chǎn)力工具,這款軟件真正完成了數(shù)據(jù)流的打通,在一個軟件上就能實現(xiàn)接口設(shè)計--接口文檔--接口調(diào)試--接口修改--接口mock--接口測試--接口自動化--接口迭代的工作流閉環(huán);
后端,前端,測試各個角色既能各取所需,又能協(xié)同合作。

Apifox上的協(xié)作流程是這樣的:
后端在Apifox
可視化接口設(shè)計界面上定義好項目各個接口及對應(yīng)參數(shù)同時編寫接口文檔說明前后端一起評審,修改完善
接口并在同一界面順手更新接口文檔后端使用
接口調(diào)試功能調(diào)試接口前端使用
零配置高仿真mock功能對前端頁面進(jìn)行調(diào)試,無需手寫mock規(guī)則后端使用
代碼生成功能直接生成接口代碼測試在接口管理頁面一鍵生成
接口參數(shù)測試用例,并依據(jù)業(yè)務(wù)場景生成自動化測試用例,一鍵運(yùn)行接口用例并生成接口測試報告并分享給相關(guān)人員。前后端?都開發(fā)完,前端從
Mock 數(shù)據(jù)切換到正式數(shù)據(jù),進(jìn)行聯(lián)調(diào),由于使用同一個接口數(shù)據(jù)源,且遵循了接口規(guī)范,聯(lián)調(diào)順利由于
bug修復(fù)或需求變更,接口發(fā)生了變化,后端修改提交后,前端和測試實時同步到了修改后的數(shù)據(jù)項目經(jīng)理通過權(quán)限設(shè)置給
研發(fā),產(chǎn)品,測試,外部合作人員分配編輯,只讀等各種操作權(quán)限,維護(hù)了項目安全項目經(jīng)理通過各個接口的狀態(tài)
開發(fā)中,測試中,已發(fā)布來跟進(jìn)項目的進(jìn)度情況,把控項目風(fēng)險。
Apifox核心功能和界面是這樣的:




36氪報道過,Apifox在Pre-A輪融資就得到了3000萬元的融資。?資本市場如此看好這個產(chǎn)品的發(fā)展?jié)摿Γ且驗樵诮?jīng)濟(jì)增速變緩的現(xiàn)階段,
對企業(yè)來說,它能通過提高整體的合作效率來為企業(yè)節(jié)約成本;
對研發(fā)人員來說,可以減少無意義的工作量和繁雜耗時的溝通成本,將時間花在能提升自身競爭力的地方。
Apifox>Swagger+Postman+mockJS+Jmeter,它在傳統(tǒng)軟件的基礎(chǔ)上做了不少操作優(yōu)化和團(tuán)隊協(xié)同提效的功能。
Apifox做的增速提效優(yōu)化
1.接口設(shè)計:從代碼生成界面到可視化接口設(shè)計界面
Apifox 接口文檔遵循 OpenApi 3.0 (原 Swagger)、JSON Schema 規(guī)范,可生成在線文檔;零學(xué)習(xí)成本即可編寫出符合RESTful風(fēng)格的接口文檔,新人上手快;所見即所得,不易出錯。


2.文檔維護(hù):從接口與文檔分離到接口與文檔合并
當(dāng)你接手舊項目時,發(fā)現(xiàn)接口是上周的,接口文檔是商周的,上手新項目全靠老司機(jī)口口相傳,內(nèi)心大概是崩潰的吧。
接口與文檔分離常常導(dǎo)致維護(hù)困難。Apifox的接口設(shè)計界面提供了Markdown格式的文檔說明區(qū),修改完接口就如同commit代碼時添加變更說明般,自然而然地形成肌肉記憶。

3.數(shù)據(jù)復(fù)用:從各自為政到定義一次、多次復(fù)用
接口數(shù)據(jù)復(fù)用:Swagger,Postman,MockJS,Jmeter等軟件彼此之間數(shù)據(jù)不互通,數(shù)據(jù)格式不一致,接口導(dǎo)入非常耗時麻煩。
而Apifox能身兼多職,包攬上述軟件功能,在Apifox中定義一次接口,能被后端直接用來調(diào)試,前端直接用來mock界面,測試直接執(zhí)行接口自動化。
數(shù)據(jù)模型復(fù)用:可復(fù)用的數(shù)據(jù)結(jié)構(gòu),定義接口返回數(shù)據(jù)結(jié)構(gòu)及請求參數(shù)數(shù)據(jù)結(jié)構(gòu)(僅 JSON 和 XML 模式)時可直接引用。


4.同步更新,高效溝通:從溝通滯后到數(shù)據(jù)變更即時同步
當(dāng)前團(tuán)隊成員之間同步項目信息數(shù)據(jù),仍舊依靠著社交軟件,低效、不及時,也容易漏掉某些成員。
Apifox為此提供了同步功能,一旦接口數(shù)據(jù)有更新發(fā)生,就會即時同步更新并通知到項目內(nèi)所有成員。

5.零配置mock高仿真數(shù)據(jù):從苦逼造數(shù)據(jù)到零配置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ī)則。
用戶還可以自定義規(guī)則庫,滿足各種個性化需求。支持使用 正則表達(dá)式、通配符 來匹配字段名自定義 mock 規(guī)則。

除此之外
6.舊有項目無痛遷移
目前Apifox支持OpenApi,Postman,Jmeter等數(shù)據(jù)格式導(dǎo)入,方便舊有項目一鍵無痛遷移到Apifox,無需再次新建項目。

項目也支持以html或者OpenApi,Markdown格式導(dǎo)出,可用于數(shù)據(jù)備份或合作人員查看。

7.Apihub
內(nèi)置企業(yè)微信開放API,抖音開放API等第三方接口開放項目,接口可以直接在Apifox中調(diào)試,不需要到處找接口文檔和手工填寫接口。

同時Apifox也提供了網(wǎng)頁版Apihub,直接在網(wǎng)頁端調(diào)試也完全沒問題。

8.Web版本
除了客戶端,還支持web版本,用戶可以移動辦公,任意切換設(shè)備,適合緊急加班這種情況。

9.完全免費(fèi)
這個軟件SaaS版本官方已經(jīng)承諾永久免費(fèi),只有私有化部署是付費(fèi)的。而且SaaS版本不限接口數(shù)量,不限項目人數(shù),不限功能,非常厚道,對于日常開發(fā)來說,SaaS版本已經(jīng)完全夠用了。

10.社群答疑
Apifox官方還搭建了用戶答疑群,掃二維碼進(jìn)微信群,各種使用過程中的疑問,官方工作人員都會貼心解答。
下載地址
介紹了Apifox這么多實用的功能,用上了才是真生產(chǎn)力!
如果小伙伴覺得好用,可以直接去他們的官網(wǎng)下載,復(fù)制下面的鏈接,粘貼到瀏覽器打開即可下載,或者點擊閱讀原文直達(dá)!
官網(wǎng)地址:
https://www.apifox.cn/?utm_source=jhdjs
