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
API管理之利剑 -- Eolink的更多相关文章
- 传统 API 管理与测试过程正面临严峻的挑战
随着测试左移思想的引入, API (应用程序编程接口)经济的飞速增长导致对 API 管理平台的需求相应增加.越来越多的企业注重并关注接口测试.单纯的做接口测试或者做好接口测试的本质工作其实并不复杂: ...
- 什么是好的 API 设计?【eolink翻译】
对于试图完善其 API 策略的团队来说,良好的 API 设计是一个经常出现的话题. API 设计的重要性相信不需要赘述,精心设计的 API 的好处包括:更好开发人员体验.更快的文档编制以及更高的 AP ...
- FREE 开源 API 管理工具等
最近学习API 管理工具,发现几个不错的东西,记录如下: 1.IBM 收购NODE 厂家 STRONGLOOP 有一产品LOOPBACK,开源,好! 2.apigee api管理平台 也不错. 3 ...
- 论元数据和API管理工具
公司里面的很多部门都在广泛的采用元数据管理,也采用了公司内部开发的元数据管理工具,有些部门的实施效果一直非常好,而有些部门的效果则差强人意.这个问题,其实和软件系统开发完成进入维护阶段后成本居高不下的 ...
- API 管理工具
API 管理工具 你还苦于无法有效的管理大量的API吗?今天给大家介绍一款API的管理工具.这款工具可以免费使用,虽然中途可能会提示你购买,但并不影响我们的使用. 下载地址: Windows:http ...
- Api管理工具(spring-rest-docs)
对于app开发来说,必须需要有相应的api文档,一般最基础的就是用markdown工具来撰写api文档.当对于开发人员来说,是总会想着寻找更方便撰写,测试,对接前端开发的文档生成的工具. 其实这方面的 ...
- API管理平台XXL-API
<API管理平台XXL-API> 一.简介 1.1 概述 XXL-API是一个简洁易用API管理平台,提供API的"管理"."文档"."M ...
- 高效、易用、功能强大的 api 管理平台
前言导读 实际环境的需求可以说是:只有你没想到,没有实现不了的,征对于目前实际开发.测试.生产等环境中,需要用到各类的接口可达几十.甚至上百个,因此,必须需要一个统一管理的工具平台来统一管理这类接口, ...
- Gravitational Teleport 开源的通过ssh && kubernetes api 管理linux 服务器集群的网关
Gravitational Teleport 是一个开源的通过ssh && kubernetes api 管理linux 服务器集群的网关 支持以下功能: 基于证书的身份认证 ssh ...
随机推荐
- XCTF练习题---MISC---Hear-with-your-Eyes
XCTF练习题---MISC---Hear-with-your-Eyes flag:e5353bb7b57578bd4da1c898a8e2d767 解题步骤: 1.观察题目,下载附件 2.打开附件, ...
- 微服务生态组件之Spring Cloud OpenFeign详解和源码分析
Spring Cloud OpenFeign 概述 Spring Cloud OpenFeign 官网地址 https://spring.io/projects/spring-cloud-openfe ...
- clientWidth、offsetWidth、scrollWidth……
1.元素视图属性 clientWidth:元素内容可视区宽度(水平方向 width + 左右 padding). clientHeight:元素内容可视高度(垂直方向 height + 上下paddi ...
- SpringBoot从0到0.7——第二天
SpringBoot从0到0.7--第二天 今天来搭建一个登陆界面进行跳转,不带有数据库,看似就很简单的一个界面,却让我学习了好长时间去了解学习他的原理,能看懂的话还是尽量去看源码. 首先创建一个项目 ...
- 什么是Docker容器?(全面了解使用)
一:为什么需要Docker容器? 1.引入 1.1麻烦的环境部署 1.在软件开发中,最麻烦的事情之一就是环境配置.在正常情况下,如果要保证程序能运行,我们需要设置好操作系统,以及各种库和组件的安装. ...
- mysql的命令二
1.插入数据 格式一:insert into table_name valuse (字段1,字段2): insert test1 values ('wangsan',22,'male'); 格式二:i ...
- 在Windows2003 server 64位系统上使用ArcEngine开发的WCF服务
之前大篇文章提到,ESRI说AE10.0以后已经不支持WebService的发布,经过一段时间的测试,发现目前10.2.2版本开始的WCF服务都可以正常发布,且运行正常. 先说一下之前遇到的问题,本机 ...
- CentOS7 安装高版本gcc, g++, gfortran等工具
SCL(Software Collections)是一个CentOS/RHEL Linux平台的软件多版本共存解决方案,为用户提供一种方便.安全地安装和使用应用程序和运行时环境的多个版本的方式. De ...
- 分享一个 SpringCloud Feign 中所埋藏的坑
背景 前段时间同事碰到一个问题,需要在 SpringCloud 的 Feign 调用中使用自定义的 URL:通常情况下是没有这个需求的:毕竟都用了 SpringCloud 的了,那服务之间的调用都是走 ...
- 在 Git 提交信息中使用 Emoji
Gitmoji 旨在解释如何在 Git 提交消息时使用表情符号.在提交信息时使用表情符号,可以更容易地识别提交的目的或意图. Emoji 列表 :优化项目结构 / 代码格式 :art: ️ :性能提升 ...