一种基于应用系统群整体的API信息管理的方法技术方案

技术编号:36389915 阅读:12 留言:0更新日期:2023-01-18 09:54
本发明专利技术涉及研发领域、测试技术领域,提供了一种基于应用系统群整体的API信息管理的方法。主旨方便项目组在研发、测试过程中,通过无感监控测试环境的接口请求和应答数据,自动更新当前系统的API信息,并通知项目相关方;方案将解决:跨系统的接口变更沟通完全依赖人工,极易出现遗漏和错误;测试人员无法准确获取当前版本内的接口变更范围,无法做到精准测试。主要方案包括:1.部署Splunk系统,逐步接入全部应用系统群,作为系统群日志管理系统;2.搭建API管理平台,a管理各类系统批量查询Splunk日志数据库脚本;b管理脚本启动与定时任务;c按时间存储脚本查询结果;3.解析查询结果,判断接口是否有变化;4.更新API信息并通知相关方。方。

【技术实现步骤摘要】
一种基于应用系统群整体的API信息管理的方法


[0001]本专利技术涉及DevOps(持续交付)
、软件研发领域,软件测试领域,是一种基于应用系统群整体的API信息管理方案,作为联动治理多系统的API信息的方法。

技术介绍

[0002]DevOps(持续交付):由配置管理、构建与持续集成、测试管理、部署与发布管理、环境管理、数据管理、度量与反馈7大能力子域,共14个能力项构成。使用闭环的工具、平台组合,强约束力代码分支策略手段,高覆盖率的自动化测试手段,强大的部署自动化手段确保项目管理流畅,高质量交付,部署可重复性。但在DevOps(持续交付)过程中,项目组的API管理工作很大程度依赖人工,系统群整体的APl管理比较困难,比如以下场景:
[0003]①
项目组内部的接口文档的及时更新只出现在小范围内,研发与测试之间存在一定时差,没法及时交互,导致测试过程中经常发现接口文档错误,出现因文档错误阻断测试过程的现象;
[0004]②
项目组内部无法准确知晓当前版本的接口变更范围,研发的变更范围依赖人工,当人员出现流动性和工作失误,可能会出现遗漏范围或者扩大范围,遗漏范围导致漏测,扩大范围导致人力成本增加;
[0005]③
各项目组之间的接口文档的及时更新缺失,因上下游系统之前接口变更未及时沟通,导致单系统更改上线后,配套系统未及时更新从而出现生产问题;
[0006]④
项目群下快速收集多套系统的API信息较为困难。
[0007]技术缺陷:
>[0008]目前上线后出现生产事故,主要原因是第

和第

点引出的测试范围问题导致的,尤其第

点,项目组流动性过大时,对于存量代码的掌控很较弱,扩大范围后的回归测试可能依然无法避免漏测,而且极消耗人力成本。现有API管理的方案如下:
[0009]a.人工整理;
[0010]b.代码中集成开源的API管理框架,如swagger;
[0011]c.Excel文档整理后通过git进行版本控制;
[0012]其中a、c耗费人力,且容易出现更新不及时的情况,全部系统都能实现较高质量的API管理不太现实;b对原有的代码框架要求很高,不是所有系统都适用,存在推广难点,无法全部适配,推广效果会打折扣。

技术实现思路

[0013]本专利技术的目的在于解决系统群的API管理实施困难问题,从而减轻由文档更新不及时导致的研发测试失误出现的缺陷逃逸风险。
[0014]为了解决上述技术问题,本专利技术采用以下技术手段:
[0015]一种基于应用系统群整体的API信息管理的方案,包括以下步骤:
[0016]步骤1:对应用系统的测试环境循环抽取接口数据,得到纯报文日志;
[0017]步骤2:搭建API管理平台,用于数据查询脚本管理,包括以下模块:
[0018]数据脚本管理模块:用于在线维护脚本的增删改成;
[0019]脚本启动管理模块:根据使用场景设定脚本执行触发逻辑;
[0020]系统接口管理模块:可视化、格式化展示当前应用系统最新的接口清单和接口详情;
[0021]接口变更处理模块:分析接口数据,判断接口数据中是否存在格式变更,并提供特定时间范围内的接口变更记录查询功能;
[0022]步骤3:根据步骤2中搭建的数据脚本管理,开发人员在线编写脚本,脚本处理逻辑为:

依次读取步骤1中获取的接口数据;

分别存储接口数据中的请求格式、请求字段,返回格式和返回字段,并依次打上查询频率标记id与数据id。
[0023]步骤4:根据步骤2中搭建的脚本启动管理功能,在API管理平台设置脚本的查询频率、手工/定时启动方式;
[0024]步骤5:根据步骤2中搭建的脚本启动管理功能,通过手工启动和定时启动的方式来启动步骤3中编写的数据脚本,读取步骤4设置的查询频率来查询接口数据,每次查询时将本次查询周期内的接口信息数据,包括接口的请求格式、请求字段,返回格式和返回字段等数据进行解析存储入库;
[0025]步骤6:获得步骤5的节点信息数据后,API管理平台根据步骤2中搭建的接口变更处理功能,将历史接口信息与新数据进行去重对比,判断本次周期内的接口信息数据是否有变更,有变更则自动更新最新的接口清单和接口详情,同时通过企业微信通知相关方,API管理平台提供输出pdf格式的接口文档,供开发人员与测试人员使用。
[0026]上述技术方案中,步骤1主要是部署Splunk系统并建立好索引,具体包括以下步骤:
[0027]步骤1.1:部署Splunk系统,通过Splunk对系统群下的应用系统的测试环境日志进行抓取,并存储到Splunk数据库中;
[0028]步骤1.2:为各类系统建立索引,加快查询数据;
[0029]步骤1.3:利用步骤1.2中建立的索引筛选纯报文日志;
[0030]上述技术方案中,步骤2主要是利用SpringBroot后端框架与VUE前端框架搭建搭建API管理平台用于数据查询脚本管理,具体实现包括:
[0031]步骤2.1:API管理平台提供数据查询脚本文件管理功能,包括脚本上传新增、在线编辑、在线调试、在线预览和删除功能,方便系统群下的开发人员线上编辑数据脚本;
[0032]步骤2.2:API管理平台提供数据查询脚本启动管理功能,包括管理脚本执行频率,启动方式,脚本热启动功能,方便系统群下的开发人员根据使用场景设定脚本执行触发逻辑;
[0033]步骤2.3:API管理平台提供可视化、格式化的接口清单和接口详情预览功能,方便系统群下的全体人员可实时查看最新的接口信息;
[0034]步骤2.4:API管理平台按频率批次存储数据脚本处理之后的接口数据,方便追溯某一版本下的接口的变更记录。
[0035]上述技术方案中,步骤3为数据脚本编写阶段,系统群下的开发人员根据本应用系统的接口文档格式,在线编写数据查询处理脚本,脚本处理逻辑如下:
[0036]步骤3.1、数据处理脚本通过步骤1中获取的纯报文日志,提取报文中的请求码、请求字段、请求字段格式、返回字段、返回字段格式;
[0037]步骤3.2、数据处理脚本将步骤3.1中的请求码、请求字段、请求字段格式,返回字段、返回字段格式分别存储至API管理平台,并打上查询频率标记id与数据id;
[0038]上述技术方案中,步骤4为设置脚本的查询频率和启动方式;
[0039]6.根据权利1所述的一种基于应用系统群整体的API信息管理的方案,其特征在于,步骤5为脚本启动,根据步骤4中设置的脚本启动方式和查询频率,可人工点击按钮或者定时自动触发脚本,脚本将通过特定的查询频率进行查询;
[0040]上述技术方案中,步骤6为信息数据处理,系统将按请求码对查询频率内的接口数据信息进行去重分析,判断是否存在变更:...

【技术保护点】

【技术特征摘要】
1.一种基于应用系统群整体的API信息管理的方法,其特征在于,包括以下步骤:步骤1:对应用系统的测试环境循环抽取接口数据,得到纯报文日志;步骤2:搭建API管理平台,用于数据查询脚本管理,包括以下模块:数据脚本管理模块:用于在线维护脚本的增删改成;脚本启动管理模块:根据使用场景设定脚本执行触发逻辑;系统接口管理模块:可视化、格式化展示当前应用系统最新的接口清单和接口详情;接口变更处理模块:分析接口数据,判断接口数据中是否存在格式变更,并提供特定时间范围内的接口变更记录查询功能;步骤3:根据步骤2中搭建的数据脚本管理,开发人员在线编写脚本,脚本处理逻辑为:步骤3.1、依次读取步骤1中获取的接口数据;步骤3.2、分别存储接口数据中的请求格式、请求字段,返回格式和返回字段,并依次打上查询频率标记id与数据id;步骤4:根据步骤2中搭建的脚本启动管理功能,在API管理平台设置脚本的查询频率、手工/定时启动方式;步骤5:根据步骤2中搭建的脚本启动管理功能,通过手工启动和定时启动的方式来启动步骤3中编写的数据脚本,读取步骤4设置的查询频率来查询接口数据,每次查询时将本次查询周期内的接口信息数据,包括接口的请求格式、请求字段,返回格式和返回字段等数据进行解析存储入库;步骤6:获得步骤5的节点信息数据后,API管理平台根据步骤2中搭建的接口变更处理功能,将历史接口信息与新数据进行去重对比,判断本次周期内的接口信息数据是否有变更,有变更则自动更新最新的接口清单和接口详情,同时通过企业微信通知相关方,API管理平台提供输出pdf格式的接口文档,供开发人员与测试人员使用。2.根据权利要求1所述的一种基于应用系统群整体的API信息管理的方案,其特征在于,步骤1主要是部署Splunk系统并建立好索引,具体包括以下步骤:步骤1.1:部署Splunk系统,通过Splunk对系统群下的应用系统的测试环境日志进行抓取,并存储到Splunk数据库中;步骤1.2:为各类系统建立索引,加快查询数据;步骤1.3:利用步骤1.2中建立的索引筛选纯报文日志;3.根据权利1所述的一种基于应用系统群整体的APl信息管理的方案,其特征在于,步骤2主要是利用SpringBroot后端框架与VUE前端框架搭建搭建API管理平台用于数据...

【专利技术属性】
技术研发人员:陈韬章文吴尚璟田骏
申请(专利权)人:武汉众邦银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1