System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种代码影响范围的确定方法、装置及设备制造方法及图纸_技高网

一种代码影响范围的确定方法、装置及设备制造方法及图纸

技术编号:41265361 阅读:2 留言:0更新日期:2024-05-11 09:21
本申请公开一种代码影响范围的确定方法、装置及设备,获取包括至少一个代码文件的代码项目,代码项目中包括目标类型代码,如函数名、变量名或类名。基于代码项目中的目标类型代码和目标类型代码在代码项目中的上游调用代码生成至少一条调用链。调用链用于确定代码项目中的修改代码的代码影响范围。具体地,当代码项目中存在修改代码时,先确定该修改代码,并确定修改代码所涉及的目标类型代码。进而,从调用链中查找修改代码所涉及的目标类型代码,再结合调用链生成修改代码的代码影响范围。如此,基于调用链实现了代码影响范围的确定,且调用链中涉及函数名、变量名或类名等多种类型代码,适用于较多的代码修改场景。

【技术实现步骤摘要】

本申请涉及计算机,具体涉及一种代码影响范围的确定方法、装置及设备


技术介绍

1、在软件开发的过程中,开发人员需要根据软件开发需求对软件代码进行修改,测试人员则需要为修改的软件代码构建测试用例并进行测试。

2、在实际应用中,修改的软件代码可能会影响软件中其他代码的功能,测试人员还需确定受影响的其他代码,并对这些代码进行测试,以确保软件整体能够满足应用需求。

3、因此,亟需一种技术方案,来获取修改的软件代码的代码影响范围。


技术实现思路

1、有鉴于此,本申请提供一种代码影响范围的确定方法、装置及设备,能够获取较为准确的代码影响范围。

2、为解决上述问题,本申请提供的技术方案如下:

3、第一方面,本申请提供一种代码影响范围的确定方法,所述方法包括:

4、获取包括至少一个代码文件的代码项目;所述代码项目中包括目标类型代码,所述目标类型代码包括函数名、变量名或类名;

5、确定所述代码项目中的修改代码,并确定所述修改代码所涉及的目标类型代码,利用所述修改代码所涉及的目标类型代码和调用链生成所述修改代码的代码影响范围;

6、其中,所述调用链是基于所述代码项目中的目标类型代码以及所述目标类型代码在所述代码项目中的上游调用代码生成的。

7、第二方面,本申请提供一种代码影响范围的确定装置,所述装置包括:

8、第一获取单元,用于获取包括至少一个代码文件的代码项目;所述代码项目中包括目标类型代码,所述目标类型代码包括函数名、变量名或类名;

9、确定单元,用于确定所述代码项目中的修改代码,并确定所述修改代码所涉及的目标类型代码,利用所述修改代码所涉及的目标类型代码和调用链生成所述修改代码的代码影响范围;其中,所述调用链是基于所述代码项目中的目标类型代码以及所述目标类型代码在所述代码项目中的上游调用代码生成的。

10、第三方面,本申请提供一种电子设备,包括:

11、一个或多个处理器;

12、存储装置,其上存储有一个或多个程序,

13、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的代码影响范围的确定方法。

14、第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的代码影响范围的确定方法。

15、第五方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面所述的代码影响范围的确定方法。

16、由此可见,本申请具有如下有益效果:

17、本申请提供一种代码影响范围的确定方法、装置及设备,在该方法中,获取开发的用于实现软件功能的代码项目。代码项目由一个或多个代码文件组成,代码文件用于实现软件功能中的子功能。代码项目中包括目标类型代码,目标类型代码例如为函数名、变量名或类名。不同的目标类型代码可存在于相同或不同的代码文件中。基于代码项目中的目标类型代码和目标类型代码在代码项目中的上游调用代码可生成至少一条调用链。在代码项目中,上游调用代码对目标类型代码存在调用关系。调用链用于确定代码项目中的修改代码的代码影响范围。具体地,当代码项目中存在修改代码时,先确定该修改代码,并确定该修改代码所涉及的目标类型代码,之后便可从调用链中查找该修改代码所涉及的目标类型代码,以进而基于调用链生成修改代码的代码影响范围。

18、可知,修改后的代码可能对存在调用关系的其他代码的功能存在影响,因此,本申请在获取表示代码间调用关系的调用链后,可基于调用链确定修改代码所影响的其他代码。而且,调用链中的目标类型代码涉及函数名、变量名或类名等多种代码类型,能够使得获得的调用链中的内容较为全面,可适用于较多的代码修改场景。

本文档来自技高网...

【技术保护点】

1.一种代码影响范围的确定方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述调用链的生成过程,包括:

4.根据权利要求2所述的方法,其特征在于,所述别名配置信息包括存在别名的目标类型代码、所述别名以及所述目标类型代码与所述别名之间的映射关系;所述调用链的生成过程,包括:

5.根据权利要求2所述的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的方法,其特征在于,所述识别所述代码项目中的目标类型代码,获取所述目标类型代码在所述代码项目中的上游调用代码,包括:

7.根据权利要求5所述的方法,其特征在于,所述识别所述代码项目中的目标类型代码,包括:

8.根据权利要求2所述的方法,其特征在于,所述匿名配置信息包括访问路径信息中的被匿名对象、匿名标识以及所述被匿名对象与所述匿名标识之间的映射关系;所述方法还包括:

9.根据权利要求5或7所述的方法,其特征在于,所述获取所述目标类型代码在所述代码项目中的上游调用代码,包括:

10.一种代码影响范围的确定装置,其特征在于,所述装置包括:

11.一种电子设备,其特征在于,包括:

12.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9中任一所述的代码影响范围的确定方法。

...

【技术特征摘要】

1.一种代码影响范围的确定方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述调用链的生成过程,包括:

4.根据权利要求2所述的方法,其特征在于,所述别名配置信息包括存在别名的目标类型代码、所述别名以及所述目标类型代码与所述别名之间的映射关系;所述调用链的生成过程,包括:

5.根据权利要求2所述的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的方法,其特征在于,所述识别所述代码项目中的目标类型代码,获取所述目标类型代码在所述代码项目中的上游调用代码,包括:

7.根据权利要求5所...

【专利技术属性】
技术研发人员:吕飞飞顾磊程派峰王锦添朱亮胡雷庭李宽
申请(专利权)人:北京火山引擎科技有限公司
类型:发明
国别省市:

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

1