代码差异检测方法及装置转让专利

申请号 : CN202111502364.6

文献号 : CN113900962B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李志康白剑黄海亮梁瑛玮张海林鲁和平李长杰陈焕然李乐王浩洪行健冷冬丁一

申请人 : 广州易方信息科技股份有限公司

摘要 :

本发明涉及一种代码差异检测方法及装置,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重,并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测试人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建立关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。

权利要求 :

1.一种代码差异检测方法,其特征在于,包括步骤:监听代码的更新;

比对更新前后的代码,以获得差异代码;

寻找与所述差异代码相关的API路径,并确定所述API路径的关联文本信息和方法修改权重;

所述寻找与所述差异代码相关的API路径,并确定所述API路径的关联文本信息和方法修改权重的过程,包括步骤:确定差异代码的调用链路;

根据调用链路确定相关的API路径;

基于调用链路和API路径确定API路径的关联文本信息和方法修改权重;

其中,根据调用链追溯并解析差异代码方法中存在的Mapping类型标签,分析对外提供的API路径以及该API调用路径中涉及修改方法权重;

根据所述差异代码预先关联的PM业务单号,查找业务描述文本信息;

根据所述业务描述文本信息和所述关联文本信息,在功能标签数据库中选取出特定功能标签;

基于所述API路径、所述方法修改权重和所述特定功能标签,确定代码差异检测结果信息。

2.根据权利要求1所述的代码差异检测方法,其特征在于,所述监听代码的更新的过程,包括步骤:

通过开发持续集成工具监听代码的更新。

3.根据权利要求1所述的代码差异检测方法,其特征在于,所述比对更新前后的代码,以获得差异代码的过程,包括步骤:比对更新前后的代码,整理出差异代码;

解析所述差异代码的抽象语法树并分析代码结构,以展示所述差异代码的方法维度。

4.根据权利要求1所述的代码差异检测方法,其特征在于,所述根据所述业务描述文本信息和所述关联文本信息,在功能标签数据库中选取出特定功能标签的过程,包括步骤:对所述业务描述文本信息和所述关联文本信息进行词性分析,在功能标签数据库中选取出特定功能标签。

5.根据权利要求1所述的代码差异检测方法,其特征在于,基于所述API路径、所述方法修改权重和所述特定功能标签,确定代码差异检测结果信息的过程,包括步骤:基于所述PM业务单号对应的差异代码的所述API路径、所述方法修改权重和所述特定功能标签,确定代码差异检测结果信息。

6.根据权利要求1所述的代码差异检测方法,其特征在于,还包括步骤:将所述代码差异检测结果信息进行可视化展示。

7.一种代码差异检测装置,其特征在于,包括:代码监听模块,用于监听代码的更新;

代码比对模块,用于比对更新前后的代码,以获得差异代码;

路径寻找模块,用于寻找与所述差异代码相关的API路径,并确定所述API路径的关联文本信息和方法修改权重;

所述寻找与所述差异代码相关的API路径,并确定所述API路径的关联文本信息和方法修改权重的过程,包括步骤:确定差异代码的调用链路;

根据调用链路确定相关的API路径;

基于调用链路和API路径确定API路径的关联文本信息和方法修改权重;

其中,根据调用链追溯并解析差异代码方法中存在的Mapping类型标签,分析对外提供的API路径以及该API调用路径中涉及修改方法权重;

文本查找模块,用于根据所述差异代码预先关联的PM业务单号,查找业务描述文本信息;

标签选取模块,用于根据所述业务描述文本信息和所述关联文本信息,在功能标签数据库中选取出特定功能标签;

信息确定模块,用于基于所述API路径、所述方法修改权重和所述特定功能标签,确定代码差异检测结果信息。

8.一种计算机存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行时实现如权利要求1至6任意一项所述的代码差异检测方法。

9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行程序时实现如权利要求1至6任意一项所述的代码差异检测方法。

说明书 :

代码差异检测方法及装置

技术领域

[0001] 本发明涉及软件测试技术领域,特别是涉及一种代码差异检测方法及装置。

背景技术

[0002] 软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程,其中,软件系统或软件部分的实现,主要是依托代码。因此,在软件出现变化时,诸如功能变化或
接口变化时,需要调整或重新编写代码,造成不同版本迭代或需求变更中的代码差异——
1、在日常版本功能开发过程中,若存在多人协同开发的情况,此时对于代码改动的功能影
响范围的边界会变得模糊,容易出现提测功能外的业务受影响的问题;2、代码版本迭代过
程中经常存在开发自测的情况,但对这部分自测的功能,容易忽略可能对其他的业务功能
造成的影响,导致上线后,用户或客户报障;3、日常开发提测的项目需求业务功能较多,负
责测试的人员难以感知该功能的修改范围,容易出现漏测的情况。
[0003] 因此,需要对代码的差异进行检测,判断差异的原因,给测试提供精准的参考信息。目前,传统代码差异检测方式是对比代码获取方法变更集,生成调用关系依赖树向上对
代码的影响面进行追溯,找到受影响的代码和代码的影响面并可视化。然而,这种方式只能
反映代码本身的差异,无法将代码差异的深层次表征反映出来,影响后续开发或测试的工
作准确性和效率。

发明内容

[0004] 基于此,有必要针对传统的代码差异检测方式还存在的不足,提供一种代码差异检测方法及装置。
[0005] 一种代码差异检测方法,包括步骤:
[0006] 监听代码的更新;
[0007] 比对更新前后的代码,以获得差异代码;
[0008] 寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重;
[0009] 根据差异代码预先关联的PM业务单号,查找业务描述文本信息;
[0010] 根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签;
[0011] 基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0012] 上述的代码差异检测方法,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权
重,并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本
信息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法
修改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测
试人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建
立关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。
[0013] 在其中一个实施例中,监听代码的更新的过程,包括步骤:
[0014] 通过开发持续集成工具监听代码的更新。
[0015] 在其中一个实施例中,比对更新前后的代码,以获得差异代码的过程,包括步骤:
[0016] 比对更新前后的代码,整理出差异代码;
[0017] 解析差异代码的抽象语法树并分析代码结构,以展示差异代码的方法维度。
[0018] 在其中一个实施例中,寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重的过程,包括步骤:
[0019] 确定差异代码的调用链路;
[0020] 根据调用链路确定相关的API路径;
[0021] 基于调用链路和API路径确定API路径的关联文本信息和方法修改权重。
[0022] 在其中一个实施例中,根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签的过程,包括步骤:
[0023] 对业务描述文本信息和关联文本信息进行词性分析,在功能标签数据库中选取出特定功能标签。
[0024] 在其中一个实施例中,基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息的过程,包括步骤:
[0025] 基于PM业务单号对应的差异代码的API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0026] 在其中一个实施例中,还包括步骤:
[0027] 将代码差异检测结果信息进行可视化展示。
[0028] 一种代码差异检测装置,包括:
[0029] 代码监听模块,用于监听代码的更新;
[0030] 代码比对模块,用于比对更新前后的代码,以获得差异代码;
[0031] 路径寻找模块,用于寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重;
[0032] 文本查找模块,用于根据差异代码预先关联的PM业务单号,查找业务描述文本信息;
[0033] 标签选取模块,用于根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签;
[0034] 信息确定模块,用于基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0035] 上述的代码差异检测装置,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权
重,并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本
信息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法
修改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测
试人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建
立关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。
[0036] 一种计算机存储介质,其上存储有计算机指令,计算机指令被处理器执行时实现上述任一实施例的代码差异检测方法。
[0037] 上述的计算机存储介质,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重,
并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本信
息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法修
改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测试
人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建立
关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。
[0038] 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述任一实施例的代码差异检测方法。
[0039] 上述的计算机设备,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重,并根
据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本信息和
关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法修改权
重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测试人员
可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建立关
联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。

附图说明

[0040] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可
以根据这些附图获得其他的附图。
[0041] 图1为一实施方式的代码差异检测方法流程图;
[0042] 图2为另一实施方式的代码差异检测方法流程图;
[0043] 图3为一实施方式的代码差异检测装置模块结构图;
[0044] 图4为一实施方式的计算机内部构造示意图。

具体实施方式

[0045] 为了更好地理解本发明的目的、技术方案以及技术效果,以下结合附图和实施例对本发明进行进一步的讲解说明。同时声明,以下所描述的实施例仅用于解释本发明,并不
用于限定本发明。
[0046] 本发明实施例提供了一种代码差异检测方法。
[0047] 图1为一实施方式的代码差异检测方法流程图,如图1所示,一实施方式的代码差异检测方法包括步骤S100至步骤S105:
[0048] S100,监听代码的更新;
[0049] S101,比对更新前后的代码,以获得差异代码;
[0050] S102,寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重;
[0051] S103,根据差异代码预先关联的PM业务单号,查找业务描述文本信息;
[0052] S104,根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签;
[0053] S105,基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0054] 其中,代码的更新包括软件版本的迭代、业务功能的变化等,表征为代码的变化。通过监听代码的更新,在代码出现变化时捕获触发事件,以启动后续的代码处理。
[0055] 在其中一个实施例中,图2为另一实施方式的代码差异检测方法流程图,如图2所示,步骤S100中监听代码的更新的过程,包括步骤S200:
[0056] S200,通过开发持续集成工具监听代码的更新。
[0057] 其中,通过预设程序监听代码的更新。通过预设程序与开发持续集成工具进行结合,持续集成来监听代码的更新,触发构建。基于此,实现对代码更新的实时监听,快速触发
差异代码的确定。
[0058] 作为一个较优的实施方式,开发持续集成工具选用Jenkins。
[0059] 通过比对更新前后的代码,确定新增/修改的代码作为差异代码。
[0060] 在其中一个实施例中,如图2所示,步骤S101中比对更新前后的代码,以获得差异代码的过程,包括步骤S201和步骤S202:
[0061] S201,比对更新前后的代码,整理出差异代码;
[0062] S202,解析差异代码的抽象语法树并分析代码结构,以展示差异代码的方法维度。
[0063] 其中,可根据代码版本分析工具,将更新前后的代码分支进行比对,将差异代码整理出来。作为一个较优的实施方式,通过JGIT代码版本分析工具,将版本迭代的开发分支与
线上当前分支进行比对,将java差异代码整理出来,并结合AST程序解析代码抽象语法树,
分析代码结构,以代码的方法维度作为最小的粒度进行展示。
[0064] 在差异代码的对外功能实现中,需要借助API路径,基于此在确定差异代码后,再寻找与差异代码相关的API路径。
[0065] 在其中一个实施例中,如图2所示,步骤S102中寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重的过程,包括步骤S203至步骤S205:
[0066] S203,确定差异代码的调用链路;
[0067] S204,根据调用链路确定相关的API路径;
[0068] S205,基于调用链路和API路径确定API路径的关联文本信息和方法修改权重。
[0069] 作为一个较优的实施方式,通过javaasist去分析更新后代码所在的调用关系,并整理分析出一整条差异代码调用链路,根据调用链追溯并解析差异代码方法中存在的
Mapping类型标签,分析对外提供的API路径以及该API调用路径中涉及修改方法权重。
[0070] 其中,Mapping类型标签包括@DeleteMapping标签、@PostMapping标签、@GetMapping标签或@RequestMapping标签等。
[0071] 在其中一个实施例中,API路径的关联文本信息包括方法注释或代码提交注释。
[0072] 进一步地,根据差异代码预先关联的PM(Product manager 项目管理)业务单号,查找业务描述文本信息。其中,通过预先关联,在差异代码被提交的过程中,需要同步提交
关联的PM业务单号。
[0073] 根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签。其中,功能标签数据库预先存储有功能标签,根据文字识别或映射等关系,从业务描述
文本信息和关联文本信息中选取对应的功能标签,作为特定功能标签。其中,功能标签用于
表征代码的功能、业务或产品等直接信息,用于为相关开发人员或测试人员提供参考。
[0074] 在其中一个实施例中,如图2所示,步骤S104中根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签的过程,包括步骤S206:
[0075] S206,对业务描述文本信息和关联文本信息进行词性分析,在功能标签数据库中选取出特定功能标签。
[0076] 在其中一个实施例中,以hanlp(Han Language Processing 汉语言处理包)为基础,开发一套解析语言文本,并反馈功能标签数据库中的功能标签的程序。分别以java代码
方法注释、代码提交时的文本注释以及代码提交时关联的PM业务单号所涉及的业务内容三
个维度进行分析,确定代码影响范围涉及的功能的特定功能标签,以提高反馈准确性。
[0077] 基于此,根据API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。相关开发或测试人员可根据代码差异检测结果信息,以PM业务系统为核心汇总,将关注
点聚焦在企业对外提供服务的API路径上,对每个PM业务单对应的差异代码涉及的提供服
务API路径有一个清晰明确的把握,保障了对外服务API的功能质量。同时,将差异代码涉及
的改动与功能标签数据库进行关联,给业务功能影响范围的指引,在开发测试阶段锁定测
试范围和关联工单,有目标有针对性的对业务进行测试与回归,提高测试质量与效率,并可
对接其他系统进行其他的一些操作,如功能自动化测试、代码测试覆盖率等。
[0078] 同时,代码差异检测结果信息可用于引导PM业务单对应的相关产品/开发/测试人员关注业务功能中可能存在的一些忽略/遗漏的问题,提高业务聚焦度。同时通过代码差异
检测结果信息内的方法修改权重,突出修改权重大的API路径,以便于进行重点测试,降低
API功能风险。
[0079] 在其中一个实施例中,步骤S105中基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息的过程,包括步骤S207:
[0080] S207,基于PM业务单号对应的差异代码的API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0081] 以PM业务单号为单位,汇总API路径、方法修改权重和特定功能标签。基于此,根据API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。相关开发或测试人
员可根据代码差异检测结果信息,以PM业务系统为核心汇总,将关注点聚焦在企业对外提
供服务的API路径上,对每个PM业务单对应的差异代码涉及的提供服务API路径有一个清晰
明确的把握,保障了对外服务API的功能质量。同时,将差异代码涉及的改动与功能标签数
据库进行关联,给业务功能影响范围的指引,在开发测试阶段锁定测试范围和关联工单,有
目标有针对性的对业务进行测试与回归,提高测试质量与效率,并可对接其他系统进行其
他的一些操作,如功能自动化测试、代码测试覆盖率等。
[0082] 同时,代码差异检测结果信息可用于引导PM业务单对应的相关产品/开发/测试人员关注业务功能中可能存在的一些忽略/遗漏的问题,提高业务聚焦度。同时通过代码差异
检测结果信息内的方法修改权重,突出修改权重大的API路径,以便于进行重点测试,降低
API功能风险。
[0083] 在其中一个实施例中,如图2所示,另一实施方式的代码差异检测方法还包括步骤S208:
[0084] S208,将代码差异检测结果信息进行可视化展示。
[0085] 将代码差异检测结果信息通过文字、音频或图像等方式进行可视化展示,便于相关测试或开发人员快速了解代码变化的深层次表征。
[0086] 上述任一实施例的代码差异检测方法,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和
方法修改权重,并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业
务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于
API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关
开发人员和测试人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相
关业务功能建立关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考
以提高效率。
[0087] 本发明实施例还提供了一种代码差异检测装置。
[0088] 图3为一实施方式的代码差异检测装置模块结构图,如图3所示,一实施方式的代码差异检测装置包括:
[0089] 代码监听模块100,用于监听代码的更新;
[0090] 代码比对模块101,用于比对更新前后的代码,以获得差异代码;
[0091] 路径寻找模块102,用于寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重;
[0092] 文本查找模块103,用于根据差异代码预先关联的PM业务单号,查找业务描述文本信息;
[0093] 标签选取模块104,用于根据业务描述文本信息和关联文本信息,在功能标签数据库中选取出特定功能标签;
[0094] 信息确定模块105,用于基于API路径、方法修改权重和特定功能标签,确定代码差异检测结果信息。
[0095] 上述的代码差异检测装置,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权
重,并根据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本
信息和关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法
修改权重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测
试人员可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建
立关联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。
[0096] 本发明实施例还提供了一种计算机存储介质,其上存储有计算机指令,该指令被处理器执行时实现上述任一实施例的代码差异检测方法。
[0097] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取
存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请
所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非
易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、
电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取
存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态
RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM
(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直
接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0098] 或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施
例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,
该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以
是个人计算机、终端、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述
的存储介质包括:移动存储设备、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
[0099] 与上述的计算机存储介质对应的是,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其
中,处理器执行程序时实现如上述各实施例中的任意一种代码差异检测方法。
[0100] 该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理
器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该
非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操
作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网
络连接通信。该计算机程序被处理器执行时以实现一种代码差异检测方法。该计算机设备
的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏
上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接
的键盘、触控板或鼠标等。
[0101] 上述计算机设备,在监听到代码的更新后,比对更新前后的代码,以获得差异代码。寻找与差异代码相关的API路径,并确定API路径的关联文本信息和方法修改权重,并根
据差异代码预先关联的PM业务单号,查找业务描述文本信息,再根据业务描述文本信息和
关联文本信息,在功能标签数据库中选取出特定功能标签。最后,基于API路径、方法修改权
重和特定功能标签,确定代码差异检测结果信息。基于此,代码的相关开发人员和测试人员
可根据代码差异检测结果信息直观了解代码的更新变化,并与代码相关业务功能建立关
联,确定代码变化的深层次表征,为开发工作或测试工作提供准确参考以提高效率。
[0102] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛
盾,都应当认为是本说明书记载的范围。
[0103] 以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在
不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
因此,本发明专利的保护范围应以所附权利要求为准。