【技术实现步骤摘要】
接口变化的检测方法及装置
本申请涉及软件开发领域,具体而言,涉及一种接口变化的检测方法及装置。
技术介绍
在进行项目开发和版本迭代过程中,尤其是前后端分离的项目,后端开发人员与前端开发人员在进行接口对接的过程中,后端开发人员需要告知前端开发人员新增了哪些接口,已有的接口中哪些接口的哪些参数进行了修改。如果后端开发人员手动整理接口变化的文档,非常耗时而且容易出错。为解决上述问题,目前在java后端web开发中,通过引入Swagger文档,只需要在相关的应用程序接口(api)和类上添加相应注解即可生成接口相关的文档。但是,这种基于swagger文档来人为地查看哪些接口的哪些参数发生了变化,工作量大而且容易出错针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请实施例提供了一种接口变化的检测方法及装置,以至少解决相关技术中在确定接口文档中发生变化的接口和参数时,效率比较低的技术问题。根据本申请实施例的一个方面,提供了一种接口变化的检测方法,包括:获取第一版本的第一接口文档和第二版本的第二接口文档;从第一接口文档中提取应用接口的第一输入输出参数和第一访问路径参数,从第二接口文档中提取应用接口的第二输入输出参数和第二访问路径参数;检测第一输入输出参数和第二输入输出参数的差异,得到第一接口变化信息,以及检测第一访问路径参数中和第二访问路径参数的差异,得到第二接口变化信息;输出第一接口变化信息和第二接口变化信息。可选地,检测第一输入输出参数和第二输入输出参数的差异,得到第一 ...
【技术保护点】
1.一种接口变化的检测方法,其特征在于,包括:/n获取第一版本的第一接口文档和第二版本的第二接口文档;/n从所述第一接口文档中提取应用接口的第一输入输出参数和第一访问路径参数,从第二接口文档中提取所述应用接口的第二输入输出参数和第二访问路径参数;/n检测所述第一输入输出参数和第二输入输出参数的差异,得到第一接口变化信息,以及检测所述第一访问路径参数中和第二访问路径参数的差异,得到第二接口变化信息;/n输出所述第一接口变化信息和第二接口变化信息。/n
【技术特征摘要】 【专利技术属性】
1.一种接口变化的检测方法,其特征在于,包括:
获取第一版本的第一接口文档和第二版本的第二接口文档;
从所述第一接口文档中提取应用接口的第一输入输出参数和第一访问路径参数,从第二接口文档中提取所述应用接口的第二输入输出参数和第二访问路径参数;
检测所述第一输入输出参数和第二输入输出参数的差异,得到第一接口变化信息,以及检测所述第一访问路径参数中和第二访问路径参数的差异,得到第二接口变化信息;
输出所述第一接口变化信息和第二接口变化信息。
2.根据权利要求1所述的方法,其特征在于,检测所述第一输入输出参数和第二输入输出参数的差异,得到第一接口变化信息,以及检测所述第一访问路径参数中和第二访问路径参数的差异,得到第二接口变化信息,包括:
将所述第一输入输出参数和第二输出输入参数加载至与所述第一接口文档对应的第一实例中,将所述第一访问路径参数和第二访问路径参数加载至与所述第二接口文档对应的第二实例中;
比较所述第一实例中第一类字段与所述第二实例中的第一类字段的差异,得到所述第一接口变化信息,其中,所述第一类型字段用于定义所述第一接口文档和第二接口文档中的输入输出参数;以及
比较所述第一实例中第二类字段与所述第二实例中的第二类字段的差异,得到所述第二接口变化信息,其中,所述第二类字段用于定义所述第一接口文档和第二接口文档中的访问路径参数。
3.根据权利要求2所述的方法,其特征在于,比较所述第一实例中第一类字段与所述第二实例中的第一类字段的差异,得到所述第一接口变化信息,包括以下至少之一:
确定所述第一类字段中在第一实例中存在且在所述第二实例不存在的删除类,将所删除类作为所述第一接口变化信息;
确定所述第一类字段中在第一实例中不存在且在所述第二实例存在的新增类,将所述新增类作为所述第一接口变化信息;
确定所述第一类字段中在所述第一实例和第二实例中均存在的公共类,确定所述公共类中每个对象在所述第一实例和第二实例中的差异,得到所述第一接口变化信息。
4.根据权利要求3所述的方法,其特征在于,确定所述公共类中每个对象在所述第一实例和第二实例中的差异,包括:
检测所述公共类中目标对象的类型;
在所述类型为第一类型时,比较所述目标对象在所述第一实例中第一类型和第二实例中的第一类型之间的差异;
在所述类型为第二类型时,则获取所述目标对象中的目标属性,其中,所述目标属性用于引用其他定义字段来定义所述目标对象;确定与所述目标属性对应的目标对象,并继续确定所述目标属性对应的对象在所述第一实例和第二实例之间的差异;
在所述类型为第三类型时,遍历所述目标对象中的属性类中的子类,并确定该子类在所述第一实例和第二实例之间的差异。
技术研发人员:王福伟,
申请(专利权)人:北京国双科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。