在前後端分離的web開發模式中,通常需定義介面文件來規範其介面形式,如介面位址、引數、型別、含義等。rap 致力於提供方便的視覺化工具錄入並維護這些文件,並通過分析這些文件資料,重複利用,生成自測資料、校驗真實資料,提公升開發效率。
介面管理工作由來已久,傳統管理方式無論用word、wiki或更高階的工具,最常遇到的問題是:「介面文件不全,更新不及時」。由於開發過程中持續的介面調整幾乎無可避免,一旦介面文件不能及時同步,一切都是空談!rap工具改變了這一現狀,任何介面的變化需要通過更新rap內的介面文件來反饋給前端,而rap通過介面規則生成的模擬資料則構成了整個前端開發環境的基礎。因此,介面文件的全面性、實時性和正確性成為前後端開發過程中的強依賴,同時這也構成了rap服務於後端單元測試和ui自動化測試的基石。在rap成為前端開發過程的必經環節之後,這對rap解決複雜response資料的結構化描述、 版本歷史管理、 介面維護工具、易用性等問題時提出了更高的要求。
rap的主要目標使用者群有四種:
截至發稿時,目前rap已為600+
名工程師提供服務,立項200+
個,定義了1k+
個介面。
rap所解決的問題,主要集中於中大型的企業級專案,介面形式有一定的複雜度。
比如乙個報表的請求,可能巢狀較多的層級。傳統的方式描述較多巢狀的層級結構會較為麻煩,複製、移動等修改都消耗大量時間,而rap通過gui工具和結構分析可以很好的解決這些問題。
再複雜的巢狀引數,一鍵複製和移動。展開、摺疊毫不費力。rap專為介面編輯而設計,在使用者體驗和細節上做了大量處理,保證高效、方便的介面文件編輯。
從設計階段之後到聯調之前,前端需要編寫大量的自測資料來自測(尤其層級巢狀或case較多的情況會比較麻煩)。
有了rap告別手寫自測資料,rap會根據最新的介面文件動態實時的產生模擬資料,且結合mockjs支援深度定製的資料模擬規則。「一處寫好,大家共享。」
不管是自測、做demo,rap在資料模擬上都可用最少時間,達到最大產出。對於前端,rap模擬請求返回生成靠譜的自測資料,對於後端,rap根據介面文件中定義的引數格式偽造實際請求以此測試後端實際介面的準確性。
這是實際常見到的問題,定義好了介面,聯調的時候發現實際資料不符合規則或前端手寫的自測資料錯誤導致前端未正確處理。
rap mock保證前端**對介面正確的處理,同時,rap會根據介面文件中的結構動態驗證後端實際返回的正確性,在聯調前掃清所有後端格式錯誤。
傳統的介面文件若不進行持續的維護,將會逐漸失效。
沒有實時性的文件很快將會變成廢品,rap集中式的文件編輯,實時生效的前後端工具將rap中的介面文件變成強依賴。
rap中的介面文件一旦修改,所有的自動化功能都將受其影響,反之也保證了rap中的文件始終是最新的。
rap中對介面文件的編輯提供了一套視覺化介面,編輯操作像excel一樣方便簡單。比如您可以展開、收縮層級巢狀的引數結構,檢視、切換不同歷史版本,一鍵複製、移動引數(包括層級巢狀的複雜引數)。
為方便離線檢視,您也可以匯出介面文件(word文件)。在即將問世的v1.0新版rap中,我們還會增加:
注入規範驗證(強制介面命名規範)、介面模板等提公升文件易用性的功能。
針對rd、fe、qa不同的角色提供不同的檢視及功能。比如後端更關注介面位址,前端更關心業務邏輯中劃分的」頁面「或」模組「。我們將持續提公升產品易用性。rap的核心是介面文件,因此文件編輯的使用者體驗是我們非常重視的,有了較好的文件編輯使用者體驗,使用者才願意用rap去維護文件,並充分利用這些結構化的資料將更多工作自動化。
在設計階段寫好介面文件後,rap會根據介面文件中的請求路徑、介面資料自動生成所有的服務介面。
在聯調前,所有mock服務全部可跑通,並根據文件變化實時更新,前端自測將變得更加簡單。
rap的mock資料是動態生成的,預設資料會有自己的初始行為,您也能通過標籤精細的控制資料生成的邏輯。
這也為後續我們建立」響應引數「的資料創造基礎。
目前rap支援mockjs和rap mock兩種mock規則,後續還會進行更多擴充
。rap生成的資料通過跨平台crox模板引擎可打通多平台,意味著rap mock的用武之地不再侷限於jsonp、json形式的介面,
velocity、smarty等後端模板語言呼叫rap mock服務依然可行,實現「一處編寫、到處使用。」
我們後續還將與thx其它產品做深度結合,發揮更多的作用。
rap第一版在2023年中完成開發,歷經了3年多的實際應用,無論是文件編輯、前端mock服務、後端自測工具還是自動化測試等功能都較為成熟。我們在使用者體驗、操作細節上也做了很多的努力。
在文件結構化後再利用上,介面文件是第乙個嘗試,我們也在努力挖掘更多的可再利用文件,用以提公升其它的重複勞動,我們也在努力讓現有功能更加完善。無論你是前端、後端還是測試,有了rap,文件共享和開發將更為方便。
在即將到來的rapv1.0版本中,我們會增加分布式的nodejs客戶端,支援web伺服器與rap的深度結合,利用反向**解決mock服務跨域問題,支援離線訪問,分散伺服器mock壓力,並在客戶端實現更多強大的功能。
rap主頁:
github:
email: [email protected]。
RAP介面管理工具
rap是阿里開源的介面管理工具,主要包括開發團隊 專案的管理,編寫api介面,mock服務,介面測試,生成介面文件等功能。並且rap是可以在本地環境中進行部署使用的 linux,windows皆可 這裡也建議本地部署,第一不受網路限制,第二資料放在自己的資料庫中便於後續的功能擴充套件或分析。一 建立...
Redis Web介面管理工具
乙個很友好的redis web介面管理工具。基於.net實現。可以通過mono部署到linux上,下面是我部署在centos 5.7 mono 2.10.8 jexus 5.0.1 詳情介紹 redis的客戶端redis cli不是太好用,退格鍵和箭頭都不能正常使用,這個的確影響效率,redisco...
Apifox for Mac 介面除錯管理工具
apifox 官方版軟體介紹 軟體開發過程中,介面管理 除錯 自動化測試是必不可少的,我們經常使用 postman 等工具來進行介面除錯,在介面除錯方面 postman 做的非常出色。但是在整個軟體開發過程中,介面除錯只是其中的一部分,還有很多事情 postman 無法完成,或者無法高效完成,比如 ...