logo好方法网

一种应用于微服务工程接口文档检测的系统和方法


技术摘要:
本发明提供了一种应用于微服务工程接口文档检测的系统和方法,包括:接口文档平台与CI/CD质量检测单元;其中,接口文档平台包括接口文档自动录入模块、页面展示模块;CI/CD质量检测单元包括提供者jar包更新检测模块、微服务接口遍历模块、文档检测分析模块。通过本发明  全部
背景技术:
随着互联网行业的迅速发展,程序员开发的代码量迅速增长,程序互相调用,接口 量也大幅度增加。随之而来的问题就是接口在设计时往往需要编写大量的文档,而且编写 完成之后还会经常改动,文档编写维护工作量大,文档与代码保持修改同步也是很大的工 作量;接口文档不完善往往会增加对接双方的沟通成本。类似app的项目,前端会需要调用 到后端接口,接口功能不实现会影响前端开发进度,就需要完善的接口文档去做Mock数据, 保证前端页面的开发进度。对于测试人员测新接口功能,接口文档更是重要参考的资料,接 口测试人员了解接口最主要的依据就是接口文档。 为了提高开发效率以及测试效率,接口文档平台出现了。原先的接口文档管理一 般都是开发人员自己维护word文档或者excel表格,然后给需要的人传阅。每个人写文档风 格不一,就会在理解上出现偏差,还会出现开发人员离职导致接口文档丢失的情况。而现在 通过接口平台,制定了接口录入规范,所有接口都可通过平台查询,有效提高了研发的效 率。开发人员开发的接口功能、类型繁多,会有接口文档遗漏的情况。尤其是RPC接口,通常 开发人员在开发过程中通过交流就可以调用到接口了,忽略了书写接口文档。 因此,亟待设计一种微服务接口的接口文档检测系统,以解决接口文档遗漏的问 题,自动管理软件开发的接口信息。
技术实现要素:
本发明提供了一种应用于微服务工程接口文档检测的系统和方法,以至少解决相 关技术中接口文档不能实现自动化管理,接口文档遗漏,软件整体研发效率低的问题。 根据本发明的一个方面,提供了一种应用于微服务工程接口文档检测的系统,包 括:接口文档平台与CI/CD质量检测单元;其中,接口文档平台包括接口文档自动录入模块、 页面展示模块;CI/CD质量检测单元包括提供者jar包更新检测模块、微服务接口遍历模块、 文档检测分析模块: 所述接口文档自动录入模块,用于对新增、修改的接口进行接口文档自动录入; 所述提供者jar包更新检测模块,通过从maven私服获取最新微服务工程的jar包, 同时新增或修改maven的pom文件,更新微服务工程的jar包; 所述微服务接口遍历模块,通过zookeeper获取微服务工程提供的服务,然后通过 java反射机制对所述服务的接口进行遍历获取接口信息,所述接口信息包括但不限于工程 名、接口名称、请求参数、描述信息; 所述接口文档检测分析模块,将微服务工程的接口信息与现有的接口文档进行对 比分析,分析得出需要新增或者修改的接口文档的接口信息。 4 CN 111611173 A 说 明 书 2/7 页 可选的,所述CI/CD质量检测单元还包括消息通知模块,利用websocket对开发人 员发送需要新增或者修改的接口文档的通知信息,再同步将通知信息更新到接口文档平台 的页面展示模块进行页面显示。 可选的,所述CI/CD质量检测单元还包括:接口用例补充模块,用于接收需要新增 或者修改的接口文档的接口信息,并补充或者维护接口测试用例。 可选的,所述接口文档平台用于接口文档管理,同时支持自动化或者手动录入微 服务接口文档、WebAPI类型接口文档、航旅私有协议接口文档。 可选的,所述接口文档平台的页面展示模块用于展示需要新增或者修改的接口文 档的接口信息。 根据本发明的另一个方面,还提供了一种应用于微服务工程接口文档的检测方 法,包括: 步骤1,通过读取工程代码注解的方式,对新增、修改的接口进行文档自动录入; 步骤2,每次工程代码上线前,获取maven私服上最新微服务工程jar包,同时修改 maven的pom文件,更新微服务工程的jar包; 步骤3,获取最新微服务工程的工程代码接口,对工程代码接口进行遍历获取指定 工程代码接口的接口信息,并存储到接口信息数据库; 步骤4,将接口信息数据库中的接口信息与现有的接口文档进行对比分析,得出需 要新增或者修改的接口文档的接口信息; 步骤5,将需要新增或者修改的接口文档的接口信息通过websocket和接口平台页 面转发; 步骤6,接收所述需要新增或者修改的接口文档的接口信息,并补充或者维护接口 测试用例。 可选的,所述步骤1包括: 步骤1.1开发接口,根据接口规范写JavaDoc注释; 步骤1.2利用阿里RAP开源的读注解的插件获取所述JavaDoc注释上的接口信息; 步骤1.3将所述接口信息录入接口文档平台,状态为待审核,需要负责人确认; 步骤1.4负责人审核通过,接口信息成功录入接口文档平台;审核不通过则放弃录 入保留原有文档信息。 可选的,所述步骤2包括: 步骤2.1定时从maven私服上获取最新的微服务工程jar包信息,更新domain信息 表; 步骤2.2工程代码上线前做CI/CD检测,根据微服务工程名获取最新微服务工程 jar包;如果jar包没有升级则代表该微服务工程接口没有变动,直接跳出检测;如果jar包 有升级则进行下一步; 步骤2.3根据该最新微服务工程jar包版本号,自动更新maven的pom文件,更新最 新微服务工程的jar包; 步骤2.4重新打包检测工具,获取最新微服务工程代码的最新接口信息。 可选的,所述步骤3包括: 步骤3.1从zookeeper中取出当前微服务工程提供的服务的工程代码接口; 5 CN 111611173 A 说 明 书 3/7 页 步骤3.2通过java反射机制获取当前微服务工程提供的服务的工程代码接口信 息:工程名、接口名称、请求参数、描述信息; 步骤3.2将接口信息存储到Redis缓存中。 可选的,所述步骤4包括: 步骤4.1从缓存中取出遍历出来的接口信息与现有接口文档对比分析,如果没有 则需要新增接口文档,如果有改动则需要更新接口文档; 步骤4.2得到需要新增或者修改的接口文档,做为消息发送给AMQ。 可选的,所述步骤5包括: 步骤5.1从AMQ消息队列中取出需要补充或者修改的接口文档的接口信息:工程 名、接口名称、请求参数、描述信息; 步骤5.2根据工程名获取负责人; 步骤5.3利用WebSocket协议向指定负责人发送补充接口文档的通知,展示在接口 平台页面上; 步骤5.4将新接口、需要修改的接口通知给接口文档平台。 通过本发明,只需要开发人员在设计接口时按照规范写注解信息,就能够自动录 入接口文档。同时结合CI/CD,在上线前对现有的接口文档和开发代码中的RPC接口进行分 析检测,可以在工程上线前检测出需要补充文档的新接口、需要完善修改文档的接口。并通 知开发人员补充文档,监督开发人员规范录入文档,测试人员针对这些变更信息及时补充 维护接口测试用例,提高整体研发效率。 附图说明 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中: 图1为本发明基于微服务接口的接口文档检测系统方框图; 图2为本发明基于微服务接口的接口文档检测系统的接口文档自动录入流程图; 图3为本发明基于微服务接口的接口文档检测系统的CI/CD接口文档检测流程图。 图4为本发明基于微服务接口的接口文档检测系统的消息通知模块流程图。 图5为本发明基于微服务接口的接口文档检测系统的消息通知模块通知给接口文 档平台的新接口信息以及改动的接口信息。
下载此资料需消耗2积分,
分享到:
收藏