API管理之利劍 -- Eolink

隨著信息化飛速增長的還有各信息系統中的應用接口( API ),API 作為信息系統內部及不同信息系統之間進行數據傳輸的渠道,其數量隨著軟件系統的不斷龐大而呈指數型增長,如何管理這些 API 已經在業界變得越來越重要,需要將 API 開發的敏捷性、速度和效率提升到瞭全新的水平。

API管理

很多人認為,API 的管理無非是對 API 信息的管理,隻要將 API 記錄在 Word 或 Wiki 文檔就足夠瞭,這其實是一種想當然的想法。根據實際經驗,這些文檔隨著時間的推移,缺少維護,而逐漸變成瞭最初工作的憑證而已,已和實際運行的 API 大相徑庭瞭,已失去瞭其作為 API 文檔的意義瞭。在目前成功的API管理實踐中,API 管理應該至少包括以下內容:

1)API 文檔信息管理

2)API 測試質量管理

3)API 研發流程管理

4)API 自動測試管理

隻有至少實現瞭以上四點,才能稱之為有效的API管理,API才能更有效地服務於企業,把 API 的開發提高到新的水平。

API管理現狀

現有應用系統大多采用前後分離端架構或微服務架構,一般規模的系統至少有上百個 API,對於龐大的系統,包含數千個 API 是很正常的,並且系統內的 API 不僅數量眾多,並且種類各異,分佈在不同的地方。目前 API 管理主要存在以下難點:

1)API信息管理困難

由於系統中擁有紛繁復雜的 API,在研發過程中因疏漏無法及時更新API信息的情況時有發生,最後會導致 API 信息出現缺漏。對於 API 的開發者和使用者來說,API 文檔信息逐漸失去參考價值;對於項目管理者來說,API 信息無法與測試、項目迭代進度等內容關聯起來,無法瞭解項目的實際研發、測試和運行情況。

2)API 研發協作困難 在 API 管理平臺不統一的情況下,每個項目團隊都有自己的使用習慣或歷史遺留問題,平臺不統一導致無法維護和協作。並且由於API變更時沒有及時更新文檔和通知到相關人員,導致項目檢查、後期測試、前後端對接過程中高昂的溝通成本,拖後項目的進展。

3)API 測試困難 測試人員需要看著接口文檔再另外使用工具進行測試,另外接口發生瞭變化,需要重新再寫測試用例,增加瞭工作量降低瞭效率。測試總是排在最後進行,無法參與項目討論,無法快速大范圍回歸測試,甚至無法按時完成測試任務,導致項目延期或者忐忑上線。

4)API 自動化測試困難 測試人員需要學習編程語言去編寫測試腳本,但是測試腳本因更新不及時、編碼風格不完善、不方便協作等原因導致使用成本較高,測試報告也不夠清晰。

5)API 測試管理困難 測試團隊以及項目管理人員無法準確瞭解測試效果,無法通過數據來量化當前項目質量。項目管理人員缺乏一個平臺來展示團隊開發進度,如完成需求量情況,是否通過測試、對接和發佈等信息。

Eolink的解決之道

Eolink 提出針對 API 開發協作的創新理念——文檔與測試驅動開發(DTDD),何為文檔與測試驅動開發呢?簡而言之:

1)用標準文檔代替口頭約定和筆記文檔,讓開發、測試、運維、協作有跡可循;

2)快速用測試結果推動開發進度,讓團隊溝通更充分、管理有事實依據,實現敏捷開發。

依據這個理念,Eolink 提供一套先進的解決方案,目標是降低研發過程中因為API管理導致的效率低下、測試不清、管理困難等問題,通過敏捷的API研發管理方案和理念來推動企業業務的快速發展。下圖所示為 Eolink 解決方案示意圖:

Eolink 的實戰

1. API 信息管理

全面的 API 信息管理模塊,通過手動 或自動方式生成 API 信息,全面記錄和展示 API 信息。

1)設計 API:能夠詳細、規范地記錄API的所有信息,可以通過它來設計、統一 API 的開發規范(如下圖所示)。除瞭手動創建 API 外,還可以從其他工具或系統導入已經設計好的接口,如 Postman、Swagger、Jmeter、Apifox、YApi 等。

2)管理 API:API 信息裡面會記錄創建人、負責人、最後修改時間等信息,並且可以為 API 定義 Tags,對 API 進行分類,可以更好地對 API 進行管理,如下圖所示:

除此之外,還可以綁定 Github、Gitlab、碼雲等代碼倉庫,可以一鍵自動生成 API 文檔,也兼容 Swagger 代碼註解生成 API 文檔。

2.API測試管理

一鍵發起測試,擁有專門的測試編輯器可以直接編寫 JSON、XML 數據,還可以支持自動生成測試數據,能夠通過 Javascript 代碼對請求參數、放回結果進行二次加工,實現復雜場景的測試。

系統會記錄每一次請求的歷史,可以看到詳細的測試時間、請求及返回信息等,這樣保證瞭測試結果可查並且可追溯。

3.API 自動化測試

Eolink 實現瞭零代碼實現 API 自動化測試,能夠讓測試人員通過界面就可以完成自動化測試,並且提供瞭 Javascript 腳本模式,可以通過非常簡單的腳本來編寫復雜的 API 測試用例,實現自動化測試中復雜的流程跳轉、數據加解密、驗簽等目的。

4.API研發管理

通過把產品系統的各個研發周期串聯起來,可實現產品、開發、測試、運維等各個環節和人員的綜合協作。通過Mock API可以實現前後端同時開發,通過API狀態統計,可以快速瞭解到當前項目內所以API的狀態分佈;除此之外,還可以制定迭代計劃並跟蹤開發進度,將API綁定到迭代計劃上,可以幫助團隊將開發進度精確到以API為單位,實現更精確的進度跟蹤。

除此之外,還可將API設置為已發佈、設計中、待確定、開發、對接、測試、完成、異常、維護發、廢棄等狀態,可根據每種狀態設置狀態變更操作,如當API變為測試狀態時測試人員,當然,狀態發生改變或改變接口本身時,也可以手工選擇需要通知的人員。如下圖所示,當更新接口狀態時,不僅需要更新相關變更信息,而且還可以選擇是否觸發變更通知。

總結

以上展示隻是 Eolink 強大API管理功能中的極小一部分,除瞭API管理外,Eolink 還提供瞭自動化測試服務、API 網關、API 監控、API 自動生成等服務。Eolink 是國內 API 管理解決方案的領軍者,是國內最大的在線 API 管理服務供應商,服務瞭包括泰康在線、蘇州銀行、太平洋證券、陽光保險集團、聯通支付等眾多機構。

通過對 Eolink 試用,深以為其不愧為精心打造的 API 管理利劍,如果您有需要或感興趣,可以在其提供SaaS版本上免費使用!

圖中所使用的的接口管理工具是 eolink,感興趣可以自行使用:www.eolink.com

赞(0)