接口管理的方法、装置、电子设备和存储介质与流程

文档序号:18009485发布日期:2019-06-25 23:49阅读:171来源:国知局
接口管理的方法、装置、电子设备和存储介质与流程

本发明实施例涉及一种通信技术领域,特别是一种接口管理的方法、装置、电子设备和存储介质。



背景技术:

前后端分离开发是目前较为流行的一种软件开发实践,推行系统按分层模式开发。用户交互部分,即前端部分由独立的团队与技术独立开发;业务实现与数据管理,即后端部分由另外独立的团队与技术独立开发:前端与后端通过事先约定的接口,进行数据交互;前端部分与后端部分可以集成在一起部署管理,也可以分别独立部署和管理;除了接口发生变动会产生全局的影响,其它情况下,前端发生了变化不影响后端,后端的发生了变化也不影响前端;通过这种关注点的隔离,能将系统变动的影响降到最小,并能保证各自独立演化,十分切合目前多终端开发、微服务开发的模型与模式。

其中,使用前后端分离方式进行开发时,关键的核心是对接口进行定义、实现与管理,更确切地说,前后端开发的管理是对接口的管理。

现有技术的接口管理主要有两种:

方案一:人工文档化管理

由接口的设计人员将要使用和实现的接口记录在某一文档上,或使用word文档,或使用excel,或使用md格式文本文件等;然后将此文档复制给分发到前端和后端开发人员,前端和后端开发人员根据此文档进行前端和后端开发人员的接口配置。

该方案的缺点是不能适应变化,若接口设计人员修改了接口内容,前端和后端开发人员不能及时达成一致,导致前后端的接口版本使用不一致,将影响后续的前后端的联调。

方案二:接口平台文档化管理

接口的设计人员使用某一个接口平台,用以设计和定义接口,前后端开发人员同时也使用此平台获得接口定义,分别实现或使用接口。

该方案解决了人工分发接口的劳力问题,但没有从根本上解决接口一致性的问题,在前后端的联调时出现bug(漏洞),从而延长联调时间和开发时间。



技术实现要素:

针对现有技术的缺陷,本发明实施例提供一种接口管理的方法、装置、电子设备和存储介质。

一方面,本发明实施例提供一种接口管理的方法,所述方法包括:

获取至少一个前端项目的源代码和至少一个后端项目的源代码,每一前端项目的源代码包括前端源代码和前端应用的接口的源代码,前端应用的接口具有对应的版本号,每一后端项目的源代码包括后端源代码和后端应用的接口的源代码,后端应用的接口具有对应的版本号;

侦测前端应用的接口的版本号以及后端应用的接口的版本号;

将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

另一方面,本发明实施例提供一种接口管理的装置,所述装置包括:

获取模块,用于获取至少一个前端项目的源代码和至少一个后端项目的源代码,每一前端项目的源代码包括前端源代码和前端应用的接口的源代码,前端应用的接口具有对应的版本号,每一后端项目的源代码包括后端源代码和后端应用的接口的源代码,后端应用的接口具有对应的版本号;

侦测模块,用于侦测前端应用的接口的版本号以及后端应用的接口的版本号;

测试模块,用于将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

另一方面,本发明实施例还提供一种电子设备,包括存储器、处理器、总线以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上方法的步骤。

另一方面,本发明实施例还提供一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上方法的步骤。

由上述技术方案可知,本发明实施例提供的接口管理的方法、装置、电子设备和存储介质,所述方法通过对每一接口标记对应的版本号,并将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

附图说明

图1为本发明实施例提供的一种接口管理的方法的流程示意图;

图2为本发明又一实施例提供的前后端分离模式下的自动化配置管理架构图;

图3为本发明又一实施例提供的接口注册装置示意图;

图4为本发明又一实施例提供的接口分发装置示意图;

图5为本发明又一实施例提供的接口侦测装置示意图;

图6为本发明又一实施例提供的前后端分离模式下的自动化配置管理的流程图;

图7为本发明又一实施例提供的一种接口管理的装置的结构示意图;

图8为本发明又一实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明实施例一部分实施例,而不是全部的实施例。

图1示出了本发明实施例提供的一种接口管理的方法的流程示意图。

如图1所示,本发明实施例提供的方法具体包括以下步骤:

步骤11、获取至少一个前端项目的源代码和至少一个后端项目的源代码,每一前端项目的源代码包括前端源代码和前端应用的接口的源代码,前端应用的接口具有对应的版本号,每一后端项目的源代码包括后端源代码和后端应用的接口的源代码,后端应用的接口具有对应的版本号;

本发明实施例提供的方法在接口管理的装置上实现,接口管理的装置可为接口平台。

可选地,接口平台是本发明实施例构建的用于前后端分离模式下的自动化配置管理的平台。

可选地,前端项目的源代码是实现用户交互部分的源代码,前端源代码是前端开发人员进行前端开发,得到的源代码。

可选地,后端项目的源代码是实现业务与数据管理的源代码,后端源代码是后端开发人员进行后端开发,得到的源代码。

可选地,接口是前端与后端进行数据交互的方式。在本发明实施例中,接口设计人员针对前端和后端进行一个版本的接口设计,得到一个前端应用的接口的源代码和一个后端应用的接口的源代码。

在本发明实施例中,每一接口具有对应的版本号,版本号不同现有技术中面向用户的软件的版本号,而是接口平台设定的唯一用于标识接口的版本的标记。

针对一个版本的接口设计,前端应用的接口的版本号和后端应用的接口的版本号一致。

可选地,获取前端项目的源代码和后端项目的源代码后,将前端项目的源代码和后端项目的源代码配置到接口测试服务器,联合起来进行测试。

可选地,接口测试服务器是现有技术中用于测试前后端的接口的设备,测试的重点是检查前后端的数据的交换,传递和控制管理过程,以及前后端的相互逻辑依赖关系等。

步骤12、侦测前端应用的接口的版本号以及后端应用的接口的版本号;

可选地,由于前后端分离开发,前后端的开发进度不一致,定期进行接口测试,在一次接口测试中,接口测试服务器中很可能存在前端应用的接口的版本号和后端应用的接口的版本号不一致的问题,在本发明实施例中,侦测各个前端应用的接口的版本号和后端应用的接口的版本号。

可选地,分析每一前端应用的接口的源代码,确定前端应用的接口的版本号,并分析每一后端应用的接口的源代码,确定后端应用的接口的版本号。

步骤13、将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

通常情况下,前端与后端仅能通过同一个版本的接口进行交互。因此在本发明实施例中在判断获知某一个前端应用的接口的版本号与一个后端应用的接口的版本号一致的情况下进行测试。

可选地,接口测试服务器的一个功能是准备接口测试环境。可根据现有技术的方式准备接口测试环境。

可选地,将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口的联调测试,得到测试结果。

可选地,对于与前端应用的接口的版本号与后端应用的接口的版本号不一致的前端项目的源代码和后端项目的源代码,则不进行接口测试。通过避免对接口的版本号一致的前端项目的源代码和后端项目的源代码进行测试,可合理的展开测试,从而快速的完成联调测试。

本发明实施例的接口管理的方法,通过对每一接口标记对应的版本号,并将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试,实现成接口一致性管理。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,获取至少一个前端项目的源代码和至少一个后端项目的源代码的步骤之前,所述方法还包括:

在接口完成注册后,对每一接口标记版本号;

针对每一接口,生成对应接口的源代码,得到一个前端应用的接口的源代码和一个后端应用的接口的源代码;

将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库;

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库。

可选地,接口设计人员在完成一个接口的设计后,得到接口文件,将接口文件导入至接口平台,进行配置注册。

可选地,接口在接口平台完成注册后,接口平台为每一接口标记版本号。

可选地,接口被标记版本号后,生成对应接口的源代码,接口的源代码可采用javascript来编译。

可选地,接口的源代码为一个前端应用的接口的源代码和一个后端应用的接口的源代码。

可选地,每一接口的源代码包括版本号和接口数据,所述接口数据包括接口定义、提醒以及注释。

可选地,将生成的接口的源代码分别发布至前端代码仓库和后端代码仓库。

可选地,在前端和后端各配置一个代码仓库,所述代码仓库是可将组件打包并重复使用的程序集,例如可采用git作为代码仓库。

可选地,在前端完成一个阶段的开发后,可将前端源代码提交至前端的代码仓库,并在后端完成一个阶段的开发后,可将后端源代码提交至后端的代码仓库。

可选地,在本发明实施例中一个程序的开发至少涉及三方:接口设计、前端开发和后端开发,大部分时候,三者是独立作业,配置前端的代码仓库可整合前端项目的源代码,相应地,配置后端代码仓库可整合后端项目的源代码,从而实现各部分的源代码的专项管理,为后续测试做准备。

其中,将接口的源代码分发至前端的代码仓库和后端代码仓库,将前端源代码提交至前端的代码仓库,将后端源代码提交至后端的代码仓库的三个步骤没有先后顺序,本发明实施例以接口设计先完成为例进行说明。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,通过前端代码仓库整合前端项目的源代码,后端代码仓库整合后端项目的源代码,从而实现前后端的源代码的分离管理。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自前端的代码仓库下载至少一个前端项目的源代码;

对每一前端项目的源代码进行分析,确定前端项目的源代码的问题;

针对问题,对前端项目的源代码进行修复;

针对修复后的前端项目的源代码执行编译和打包,得到打包的前端项目的源代码;

将打包的前端项目的源代码配置到接口测试服务器。

可选地,针对前端的代码仓库,周期性自动发起配置:

可选地,自前端的代码仓库拉取多个前端项目的源代码至配置装置进行配置,配置装置可为持续集成平台。应用持续集成平台是软件开发的一个环节,持续集成平台可实现各工作任务的集成,从而尽早地发现错误。

可选地,配置装置获取前端项目的源代码,执行预先定义的javascript的脚本,对源代码进行分析,找到一些潜在的bug、结构性问题和不正确的代码规范,生成分析报告,以确定前端项目的源代码的问题。

可选地,针对发现的问题,对前端项目的源代码进行修复。

如遇到无法修复的问题,则终止自动配置的流程,会打问题标记并上传至前端的代码仓库,通知工作人员进行处理。

若修复成功,运行预设的编译脚本对每一前端项目的源代码执行编译,例如将es6(ecmascript6.0,europeancomputermanufacturersassociationscript,欧洲计算机制造商协会脚本的版本)编译成es5。

可选地,对每一前端项目的源代码执行代码压缩打包,得到一个打包的前端项目的源代码。

可选地,配置装置使用发布工具将打包的前端项目的源代码配置到接口测试服务器上。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,通过对前端项目的源代码执行分析、编译和打包的流程,为后续顺利完成代码测试做准备。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自后端的代码仓库下载至少一个后端项目的源代码;

对每一后端项目的源代码进行单元测试,得到对应的测试结果;

若测试结果为通过,则执行编译和打包,得到打包的后端项目的源代码;

将打包的后端项目的源代码配置到接口测试服务器。

可选地,针对后端的代码仓库,周期性自动发起配置:

可选地,自后端的代码仓库拉取多个后端项目的源代码至配置装置进行配置。

可选地,单元测试(unittesting),是指对最小可测试单元进行检查和验证。若测试结果为通过,表示后端项目的源代码正确,则执行编译和打包,得到打包的后端项目的源代码,将打包的后端项目的源代码配置到接口测试服务器。

若测试结果为不通过,则终止自动配置的流程,会打错误标记并上传至后端的代码仓库,通知工作人员进行处理。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,通过对后端项目的源代码进行单元测试,可及时验证后端项目的源代码的正确性。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试的步骤之后,所述方法还包括:

通过测试数据自动测试接口是否按规约完成;

若接口按规约完成,则对接口标记已实现,并更新接口实现状态列表。

可选地,进行接口测试由接口测试服务器自动执行实现:

可选地,接口按规约完成是指通过测试数据确定接口适配前端和后端,前端和后端顺利交互,接口性能达到预定的指标等。

可选地,采用mock进行接口测试,mock是在测试过程中,构造虚拟的数据链接进行测试的方法。接口访问mock数据服务的链接,测试接口是否返回预设的字段,若返回则表示接口按规约完成。

可选地,若测试结果为接口按规约完成,将前端应用的接口和后端应用的接口记为已实现。

可选地,标记接口的状态为成功后,可进行发布。若没有按规约完成,则终止发布流程,会打未完成标记并上传至各代码仓库。

可以理解的是,设置接口实现状态列表,用于展示接口的最新测试进展。

可选地,接口实现状态列表包括各个接口的实现情况,可包括已实现、未实现、未测试等,使各工作人员可以查询到各接口的状态。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,自动测试接口是否按规约完成,可高效的完成接口测试。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,所述测试数据是真实数据的链接,相应地,若接口按规约完成的步骤之后,所述方法还包括:

自动将前端应用的接口访问真实数据的链接。

可选地,在本发明实施例中使用真实数据进行测试,真实数据更符合实际应用的场景,可准确的检测接口是否完成。

可选地,前端应用的接口访问真实数据的链接,若测试结果为接口按规约完成,自动使前端应用的接口连接至真实数据,可自动切换接口的访问。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,使用真实数据进行测试,并在接口按规约完成后,自动使前端应用的接口连接至真实数据,实现自动切换接口。

在上述实施例的基础上,本发明又一实施例提供的接口管理的方法,将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库的步骤之后,所述方法还包括:

缓存每个版本的前端应用的接口的源代码和对应的前端调用代码,并缓存每个版本的后端应用的接口的源代码和对应的后端调用代码。

可选地,前端调用代码是接口设计人员设计的用于调用前端应用的接口的代码,在将前端应用的接口的源代码分发至前端的代码仓库时,一并将该前端应用的接口的源代码对应的前端调用代码分发至前端的代码仓库。

也就是说,每个版本的前端应用的接口的源代码具有对应的一个前端调用代码,通过前端调用代码可调用前端应用的接口的源代码。

可选地,后端调用代码是接口设计人员设计的用于调用后端应用的接口的源代码的代码,在将后端应用的接口的源代码分发至后端的代码仓库时,一并将该后端应用的接口的源代码对应的后端调用代码分发至后端的代码仓库。

在需要进行版本回退时,预先对每个版本的接口均做缓存,有利于接口版本回退与升级。

可选地,接口版本回退是指,需要应用之前版本的接口的源代码的情况。

实际过程中,可能存在这种情况,接口版本经历了多次修改,最后发现最新一次的修改并非是最好的,可能第一个版本的参数描述和说明更直观,则需要获取第一个版本,若接口管理混乱,可能无法确定哪一个是第一个版本,或者前端和后端确定的第一个版本不一致。

在本发明实施例中,在需要回退至某个版本的接口时,通过该版本的前端调用代码可直接调用该版本的前端应用的接口的源代码。

相应地,若后续发现需针对某一个版本的接口进行升级,对每个版本的接口的源代码均做缓存、调用,可保证提取的版本确实是需要升级的版本。

本实施例其他步骤与前述实施例步骤相似,本实施例不再赘述。

本实施例提供的接口管理的方法,通过缓存每个版本的前端应用的接口的源代码和对应的前端调用代码,缓存每个版本的后端应用的接口的源代码和对应的后端调用代码,有利于接口版本回退与升级。

为了更充分理解本发明的技术内容,在上述实施例的基础上,详细说明本实施例提供的接口管理的方法。

本发明提供的方法,提供接口设计平台,并结合持续集成技术、自动化侦测和自动化回归测试技术,妥善解决前后端管理所面临的关键问题。

图2为本发明又一实施例提供的前后端分离模式下的自动化配置管理架构图。

如图2所示,本发明以前后端接口为管理对象,通过接口注册装置、接口分发装置、接口侦测装置与配置装置进行整合,实现接口设计人员标记和维护接口版本号,前端所应用的接口以及后端所实现的接口都要匹对相应的接口版本。

图3为本发明又一实施例提供的接口注册装置示意图。

如图3所示,接口设计人员可以通过导入和在平台内手工配置注册接口,接口平台接收swagger文档格式,通过解析swagger文档保存结构化的接口定义,完成接口注册;

接口注册后,接口平台会强制为接口标记全局唯一版本号,然后设置此接口为发布中状态,并通知发布装置当前的发布状态,前端与后端仅能在同一个版本号下交互数据。

图4为本发明又一实施例提供的接口分发装置示意图。

如图4所示,接口分发装置接收到接口注册或更新后,自动判断版本变化,依据接口定义生成具有版本号前端接口代码以及后端控制层代码,前端数据模型以及后端数据模型。生成后的源代码文件自动发布到前端项目和后端项目源代码仓库内;前端和后端的源代码携有版本标记、提醒以及注释,当开发人员获取最新代码后会看到。接口分发装置同时也会推送更新至接口侦测装置以便执行后续过程中的版本侦测。

图5为本发明又一实施例提供的接口侦测装置示意图。

如图5所示,新建接口则依据接口定义生成具有版本号前端接口代码以及后端控制层代码,前端数据模型以及后端数据模型,都保存到代码仓库中;修改接口则比较与上个版本的不同,并对已有发布接口进行版本变动标记。

新建接口与修改接口的源码,包括前端和后端的源代码,都携有版本标记、提醒以及注释,当开发人员获取最新代码后会看到。

如图5所示,侦测装置扫描平台内的接口,执行接口测试,检验接口是否按规约实现,是否出现异常,如果出现未按规约或异常情况,会在后端源代码上打标记并上传至代码仓库。

如正确实现,则会标记此接口成功,并会改写前端接口,将其访问真实数据服务的链接,转为已实现的接口链接;管理人员可以查询到接口实现状态列表。

接口侦测装置与配置装置联合实现正式发布环节接口版本自动化匹配。每个版本的接口的前端调用代码以及后端实现代码都会保留在源代码中,接口侦测装置和配置装置会自动处理版本调用,确保可以保证接口版本一致,且能够同时回退到任意版本。

图6为本发明又一实施例提供的前后端分离模式下的自动化配置管理的流程图。

如图6所示,将前后端分离开发,源代码处于不同的项目下,分别被独立管理,最终合并到一起进行发布,且实现版本自动侦测适配。

具体说明如下:

1.下载前端代码

从代码仓库(如git)下载最新的前端项目源代码到本地;

2.前端代码分析、编译、打包

执行事先定义的脚本,对javascript源代码进行分析,找到一些潜在的bug、结构性问题和不正确的代码规范,将结果生成报告;如遇到问题终止自动化流程;

运行编译脚本对javascript源代码执行编译,如es6编译成es5,并将多个js文件合并到一个js文件中,再执行代码压缩打包;

3.从后端代码仓库中下载合并后的代码

从代码仓库(如git)下载最新项目源代码到本地;

4.执行后端代码的编译和打包

应用脚本编译和打包后端源代码;

5.运行后端单元测试

执行代码单元测试,如果存在没有通过的单元测试,生成测试报告;并终止流程;

6.部署到接口测试环境

前后端代码都成功的进行了编译和打包,发布工具将打包后的系统发布到接口测试服务器上;

7.读取接口定义文件执行接口测试

侦测装置建立与接口测试服务器的http连接进行接口测试,生成测试报告,若没有通过终止发布流程;配置装置在该环节会进行接口版本侦测适配;

8.发布到目标环境

配置装置将通过审查的系统发布到指定的环境,前端系统会发布到前端环境服务器,后端系统会发布到后端环境服务;其中,开发环境与测试环境采用自动化部署,对于uat环境和生产环境,可采用人工方式启动部署。

综上所述,前端依据接口访问数据和后端开发人员实现接口,配置装置获取最新代码后,通知接口平台执行接口测试,检验接口是否按规约实现,是否出现异常,如果出现未按规约或异常情况,会打标记并上传至代码仓库;如正确实现,则会标记此接口成功,改写前端接口访问代码连接,实现了前端代码自动切换接口访问功能;

本实施例提供的接口管理的方法,通过接口注册装置、接口分发装置、接口侦测装置与配置装置进行整合,扩展实现了对前后端接口统一、一致的自动化管理。

通过对前后端源代码的直接干预与控制,彻底解决了人工干预的不可抗的不一致的管理成本问题,以及弥补已有接口管理服务平台无法真正确保前后端接口一致的现实性,同时支持前后端开发的整体构建、部署。

与现有技术相比,本发明弥补了现有的前后端开发模式下的接口管理的不足,同时解决了前后端开发带来的易变性、不一致性问题,以及对接口完成跟踪,正确性确认,接口版本回退与升级。最大限度地避免人为所造成的系统bug,提高了系统的透明度,利于项目管理和项目监控。将前后端开发模或方案得以最大有效化,为进一步推广和实施奠定有利的实践基础。

图7为本发明又一实施例提供的一种接口管理的装置的结构示意图。

参照图7,在上述实施例的基础上,本实施例提供的接口管理的装置,所述装置包括获取模块71、侦测模块72和测试模块73,其中:

获取模块71用于获取至少一个前端项目的源代码和至少一个后端项目的源代码,每一前端项目的源代码包括前端源代码和前端应用的接口的源代码,前端应用的接口具有对应的版本号,每一后端项目的源代码包括后端源代码和后端应用的接口的源代码,后端应用的接口具有对应的版本号;侦测模块72用于侦测前端应用的接口的版本号以及后端应用的接口的版本号;测试模块73用于将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

可选地,前端项目的源代码是实现用户交互部分的源代码,前端源代码是前端开发人员进行前端开发,得到的源代码。

可选地,后端项目的源代码是实现业务与数据管理的源代码,后端源代码是后端开发人员进行后端开发,得到的源代码。

可选地,接口是前端与后端进行数据交互的方式。在本发明实施例中,接口设计人员针对前端和后端进行一个版本的接口设计,得到一个前端应用的接口的源代码和一个后端应用的接口的源代码。

在本发明实施例中,每一接口具有对应的版本号,版本号不同现有技术中面向用户的软件的版本号,是设定的唯一用于标识接口的版本的标记。

针对一个版本的接口设计,前端应用的接口的版本号和后端应用的接口的版本号一致。

可选地,获取模块71获取前端项目的源代码和后端项目的源代码后,将前端项目的源代码和后端项目的源代码配置到接口测试服务器,联合起来进行测试。

可选地,接口测试服务器是现有技术中用于测试前后端的接口的设备,测试的重点是检查前后端的数据的交换,传递和控制管理过程,以及前后端的相互逻辑依赖关系等。

可选地,由于前后端分离开发,前后端的开发进度不一致,定期进行接口测试,在一次接口测试中,接口测试服务器中很可能存在前端应用的接口的版本号和后端应用的接口的版本号不一致的问题,在本发明实施例中,侦测模块72侦测各个前端应用的接口的版本号和后端应用的接口的版本号。

可选地,侦测模块72分析每一前端应用的接口的源代码,确定前端应用的接口的版本号,并分析每一后端应用的接口的源代码,确定后端应用的接口的版本号。

通常情况下,前端与后端仅能通过同一个版本的接口进行交互。当然前后端的接口版本不同也许可以进行交互,但性能不稳定,做前后端测试是为了后续的产品发布,性能不稳定不符合发布的条件,因此在本发明实施例中在判断获知某一个前端应用的接口的版本号与一个后端应用的接口的版本号一致的情况下进行测试。

可选地,接口测试服务器的一个功能是准备接口测试环境。可根据现有技术的方式准备接口测试环境,例如设置环境的前置uri(统一资源标识符,uniformresourceidentifier)、全局变量、应用脚本等以完成环境部署。

可选地,测试模块73将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口的联调测试,得到测试结果。

可选地,对于与前端应用的接口的版本号与后端应用的接口的版本号不一致的前端项目的源代码和后端项目的源代码,则不进行接口测试。通过避免对接口的版本号一致的前端项目的源代码和后端项目的源代码进行测试,可合理的展开测试,从而快速的完成联调测试。

本实施例提供的接口管理的装置,可用于执行上述方法实施例的方法,本实施不再赘述。

本实施例提供的接口管理的装置,通过对每一接口标记对应的版本号,并测试模块将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试,实现成接口一致性管理。

图8示出了本发明又一实施例提供的一种电子设备的结构示意图。

参阅图8,本发明实施例提供的电子设备,所述电子设备包括存储器(memory)81、处理器(processor)82、总线83以及存储在存储器81上并可在处理器上运行的计算机程序。其中,所述存储器81、处理器82通过所述总线83完成相互间的通信。

所述处理器82用于调用所述存储器81中的程序指令,以执行所述程序时实现如图1的方法。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

获取至少一个前端项目的源代码和至少一个后端项目的源代码的步骤之前,所述方法还包括:

在接口完成注册后,对每一接口标记版本号;

针对每一接口,生成对应接口的源代码,得到一个前端应用的接口的源代码和一个后端应用的接口的源代码;

将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库;

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自前端的代码仓库下载至少一个前端项目的源代码;

对每一前端项目的源代码进行分析,确定前端项目的源代码的问题;

针对问题,对前端项目的源代码进行修复;

针对修复后的前端项目的源代码执行编译和打包,得到打包的前端项目的源代码;

将打包的前端项目的源代码配置到接口测试服务器。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自后端的代码仓库下载至少一个后端项目的源代码;

对每一后端项目的源代码进行单元测试,得到对应的测试结果;

若测试结果为通过,则执行编译和打包,得到打包的后端项目的源代码;

将打包的后端项目的源代码配置到接口测试服务器。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库的步骤之后,所述方法还包括:

缓存每个版本的前端应用的接口的源代码和对应的前端调用代码,并缓存每个版本的后端应用的接口的源代码和对应的后端调用代码。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试的步骤之后,所述方法还包括:

通过测试数据自动测试接口是否按规约完成;

若接口按规约完成,则对接口标记已实现,并更新接口实现状态列表。

在另一种实施方式中,所述处理器执行所述程序时实现如下方法:

所述测试数据是真实数据的链接,相应地,若接口按规约完成的步骤之后,所述方法还包括:

自动将前端应用的接口访问真实数据的链接。

本实施例提供的电子设备,可用于执行上述方法实施例的方法对应的程序,本实施不再赘述。

本实施例提供的电子设备,通过所述处理器执行所述程序时实现通过对每一接口标记对应的版本号,并将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试,实现成接口一致性管理。

本发明又一实施例提供的一种存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现如图1的步骤。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

获取至少一个前端项目的源代码和至少一个后端项目的源代码的步骤之前,所述方法还包括:

在接口完成注册后,对每一接口标记版本号;

针对每一接口,生成对应接口的源代码,得到一个前端应用的接口的源代码和一个后端应用的接口的源代码;

将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库;

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自前端的代码仓库下载至少一个前端项目的源代码;

对每一前端项目的源代码进行分析,确定前端项目的源代码的问题;

针对问题,对前端项目的源代码进行修复;

针对修复后的前端项目的源代码执行编译和打包,得到打包的前端项目的源代码;

将打包的前端项目的源代码配置到接口测试服务器。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

将前端源代码提交至前端的代码仓库,并将后端源代码提交至后端的代码仓库的步骤之后,所述方法还包括:

自后端的代码仓库下载至少一个后端项目的源代码;

对每一后端项目的源代码进行单元测试,得到对应的测试结果;

若测试结果为通过,则执行编译和打包,得到打包的后端项目的源代码;

将打包的后端项目的源代码配置到接口测试服务器。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

将前端应用的接口的源代码分发至前端的代码仓库,并将后端应用的接口的源代码分发至后端代码仓库的步骤之后,所述方法还包括:

缓存每个版本的前端应用的接口的源代码和对应的前端调用代码,并缓存每个版本的后端应用的接口的源代码和对应的后端调用代码。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试的步骤之后,所述方法还包括:

通过测试数据自动测试接口是否按规约完成;

若接口按规约完成,则对接口标记已实现,并更新接口实现状态列表。

在另一种实施方式中,所述程序被处理器执行时实现如下方法:

所述测试数据是真实数据的链接,相应地,若接口按规约完成的步骤之后,所述方法还包括:

自动将前端应用的接口访问真实数据的链接。

本实施例提供的存储介质,所述程序被处理器执行时实现上述方法实施例的方法,本实施不再赘述。

本实施例提供的存储介质,通过对每一接口标记对应的版本号,并将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试,实现成接口一致性管理。

本发明又一实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:

获取至少一个前端项目的源代码和至少一个后端项目的源代码,每一前端项目的源代码包括前端源代码和前端应用的接口的源代码,前端应用的接口具有对应的版本号,每一后端项目的源代码包括后端源代码和后端应用的接口的源代码,后端应用的接口具有对应的版本号;

侦测前端应用的接口的版本号以及后端应用的接口的版本号;

将接口的版本号一致的前端项目的源代码和后端项目的源代码置于同一接口测试环境,进行接口测试。

本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。

本领域技术人员可以理解,实施例中的各步骤可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。

虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1