代码检测方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:37231288 阅读:31 留言:0更新日期:2023-04-20 23:13
本公开提供了一种代码检测方法、装置、电子设备及存储介质,涉及计算机术领域,尤其涉及基于NLP的测试技术。具体实现方案为:获取目标代码分支中包括的第一合入节点集;获取所述目标代码分支所属代码主干中包括的第二合入节点集;根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支对所述代码主干的同步结果,以及所述目标代码分支在所述代码主干中的合回结果。通过本公开的技术方案可以在多开发者并行开发同一程序产品或功能模块时,最大程度的避免代码分支未完全同步代码主干中的主干代码,或者代码分支中的分支代码未合回至代码主干等错误的发生。未合回至代码主干等错误的发生。未合回至代码主干等错误的发生。

【技术实现步骤摘要】
代码检测方法、装置、电子设备及可读存储介质


[0001]本公开涉及计算机术领域,尤其涉及基于NLP(Natural Language Processing,自然语言处理)的测试技术,具体涉及一种代码检测方法、代码检测装置、电子设备及存储有计算机指令的非瞬时计算机可读存储介质。

技术介绍

[0002]相关技术在软件开发中,需要多位开发者共同参与一个程序产品或者功能模块的代码开发。在代码开发过程中,开发者们在各自的代码分支上进行代码开发。当开发者在其所持有的代码分支开发完成并验证通过后,可以直接在代码分支上进行代码交付,或者将该代码分支合回代码主干进行代码交付。
[0003]但在,上述代码开发过程中可能会出现开发者忘记在其所持有的代码分支上同步代码主干中的主干代码的情况,进而导致其所开发的代码功能不完整、不充分;或者,还可能出现开发者忘记将其所持有的代码分支上开发的分支代码合回至代码主干,进而导致代码主干或者其他代码分支无法同步到该代码分支所开发代码的功能的情况。

技术实现思路

[0004]本公开提供了一种代码检测方法、代码检测装置、电子设备及存储有计算机指令的非瞬时计算机可读存储介质。
[0005]根据本公开的一方面,提供了一种代码检测方法,包括:
[0006]获取目标代码分支中包括的第一合入节点集,其中,每个合入节点中合入有新代码;
[0007]获取所述目标代码分支所属代码主干中包括的第二合入节点集;
[0008]根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支对所述代码主干的同步结果,以及所述目标代码分支在所述代码主干中的合回结果。
[0009]根据本公开的另一方面,还提供了一种代码检测方法,包括:
[0010]获取待检测的第一代码分支,并按照预设的遍历级数逐级遍历与所述第一代码分支具有依赖关系的至少一个第二代码分支;
[0011]检测所述第一代码分支对所属第一代码主干的同步结果,以及所述第一代码分支在所述第一代码主干中的合回结果;
[0012]检测各所述第二代码分支对所属第二代码主干的同步结果,以及各所述第二代码分支对所述第二代码主干的合回结果;
[0013]汇总对所述第一代码分支和对各所述第二代码分支的检测结果。
[0014]根据本公开的另一方面,提供了一种代码检测装置,包括:
[0015]第一合入节点集获取模块,用于获取目标代码分支中包括的第一合入节点集,其中,每个合入节点中合入有新代码;
[0016]第二合入节点集获取模块,用于获取所述目标代码分支所属代码主干中包括的第
二合入节点集;
[0017]检测模块,用于根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支对所述代码主干的同步结果,以及所述目标代码分支在所述代码主干中的合回结果。
[0018]根据本公开的另一方面,还提供了一种代码检测装置,包括:
[0019]检测代码分支获取模块,用于获取待检测的第一代码分支,并按照预设的遍历级数逐级遍历与所述第一代码分支具有依赖关系的至少一个第二代码分支;
[0020]第一代码分支检测模块,用于检测所述第一代码分支对所属第一代码主干的同步结果,以及所述第一代码分支在所述第一代码主干中的合回结果;
[0021]第二代码分支检测模块,用于检测各所述第二代码分支对所属第二代码主干的同步结果,以及各所述第二代码分支对所述第二代码主干的合回结果;
[0022]检索结果汇总模块,用于汇总对所述第一代码分支和对各所述第二代码分支的检测结果。
[0023]根据本公开的另一方面,提供了一种电子设备,包括:
[0024]至少一个处理器;以及
[0025]与所述至少一个处理器通信连接的存储器;其中,
[0026]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本公开任一实施例所述的方法。
[0027]根据本公开的另一方面,还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行如本公开任一实施例所述的方法。
[0028]根据本公开的另一方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本公开任一实施例所述的方法的步骤。
[0029]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0030]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0031]图1是根据本公开实施例提供的一种代码检测方法的流程图;
[0032]图2是根据本公开实施例提供的另一种代码检测方法的流程图;
[0033]图3是根据本公开实施例提供的又一种代码检测方法的示意图;
[0034]图4是根据本公开实施例提供的一种代码测试场景图;
[0035]图5是根据本公开实施例提供的一种代码检测方法的流程图;
[0036]图6是根据本公开实施例提供的另一种代码检测方法的流程图;
[0037]图7是根据本公开实施例提供的一种代码检测装置的结构图;
[0038]图8是根据本公开实施例提供的另一种代码检测装置的结构图;
[0039]图9是用来实现本公开实施例的代码检测方法的电子设备的框图。
具体实施方式
[0040]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种
细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0041]图1是根据本公开实施例提供的一种代码检测方法的流程图。本公开实施例可适用于在多开发者并行开发同一功能模块时,对开发者的开发代码进行检测的情况。该方法可以由代码检测装置来执行,该装置可采用硬件和/或软件的方式实现,并一般可以集成在具有代码开发、提交或者发布功能的终端或者服务器中。
[0042]如图1所示,本公开实施例提供的一种代码检测方法包括以下具体步骤:
[0043]S110、获取目标代码分支中包括的第一合入节点集,其中,每个合入节点中合入有新代码。
[0044]其中,代码分支是和代码主干相区别的概念。代码主干一般与一个程序产品(例如,应用程序),或者一个程序产品中一个独立的功能模块相对应。代码主干可以理解为用于记录一个程序产品(或者功能模块)功能迭代进程的工具。在代码主干中包括有一个或者多个合入节点,每个合入节点中的代码都是对前一合入节点中代码的补充和完善。
[0045]在一个以程序产品作为示例的例子中,代码主干上的首个合入节点可以理解为与一个程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种代码检测方法,包括:获取目标代码分支中包括的第一合入节点集,其中,每个合入节点中合入有新代码;获取所述目标代码分支所属代码主干中包括的第二合入节点集;根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支对所述代码主干的同步结果,以及所述目标代码分支在所述代码主干中的合回结果。2.根据权利要求1所述的方法,其中,根据所述第一合入节点集和所述第二合入节点集,检测目标代码分支对所述代码主干的同步结果,包括:按照节点合入时间,获取所述第二合入节点集中的末位合入节点;检测所述第二合入节点集中的末位合入节点是否位于所述第一合入节点集中;若是,则确定所述目标代码分支完成对所述代码主干的同步;否则,确定所述目标代码分支未完成对所述代码主干的同步。3.根据权利要求1所述的方法,其中,根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支在所述代码主干中的合回结果,包括:按照节点合入时间,获取所述第一合入节点集中的末位合入节点;检测所述第一合入节点集中的末位合入节点是否位于所述第二合入节点集中;若是,则确定所述目标代码分支已合回至所述代码主干;否则,确定所述目标代码分支未合回至所述代码主干。4.根据权利要求1所述的方法,其中,根据所述第一合入节点集和所述第二合入节点集,检测所述目标代码分支在所述代码主干中的合回结果,包括:按照节点合入时间,获取所述第一合入节点集中的末位合入节点;获取与所述第一合入节点集和所述第二合入节点集匹配的合入节点交集数量;检测所述第一合入节点集中的末位合入节点位于所述第二合入节点集中,和所述合入节点交集数量大于或者等于2是否同时满足;若是,则确定所述目标代码分支已合回至所述代码主干;否则,确定所述目标代码分支未合回至所述代码主干。5.根据权利要求1

4任一项所述的方法,其中,获取目标代码分支中包括的第一合入节点集,包括:在确定满足与所述目标代码分支匹配的代码检测条件时,获取所述目标代码分支中包括的所述第一合入节点集。6.根据权利要求5所述的方法,其中,确定满足与所述目标代码匹配的代码检测条件,包括下述至少一项:响应于对所述目标代码分支中的末位合入节点的发布请求,确定满足与所述目标代码分支匹配的代码检测条件;响应于对目标代码分支中的末位合入节点的提交请求,确定满足与所述目标代码分支匹配的代码检测条件;以及响应于对目标代码分支中的任一合入节点的关联节点的发布请求,确定满足与所述目标代码分支匹配的代码检测条件,其中,所述关联节点位于其他代码分支中;以及响应于对目标代码分支中的任一合入节点的关联节点的提交请求,确定满足与所述目标代码分支匹配的代码检测条件。
7.根据权利要求1

4任一项所述的方法,还包括:如果确定所述目标代码分支未完成对所述代码主干的同步,则生成第一提示信息,并将所述第一提示信息发送至所述目标代码分支的代码维护方;如果确定所述目标代码分支未合回至所述代码主干,则生成第二提示信息,并将所述第二提示信息发送至所述目标代码分支的代码维护方。8.一种代码检测方法,包括:获取待检测的第一代码分支,并按照预设的遍历级数逐级遍历与所述第一代码分支具有依赖关系的至少一个第二代码分支;检测所述第一代码分支对所属第一代码主干的同步结果,以及所述第一代码分支在所述第一代码主干中的合回结果;检测各所述第二代码分支对所属第二代码主干的同步结果...

【专利技术属性】
技术研发人员:徐宏
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1