申请/专利权人:浙江大学
申请日:2023-09-07
公开(公告)日:2023-12-15
公开(公告)号:CN117234908A
主分类号:G06F11/36
分类号:G06F11/36;G06N3/042;G06N3/0455;G06N3/048;G06N3/08
优先权:
专利状态码:在审-实质审查的生效
法律状态:2024.01.02#实质审查的生效;2023.12.15#公开
摘要:本发明公开了一种自动定位缺陷根本原因的方法,该方法将修复缺陷的提交作为输入,从该提交中提取代码变更行,将每一个变更行映射到抽象语法树的节点,图中节点代表变更代码的内容,图中的边代表变更行之间的关系;得到异质图后将图输入异质图注意力神经网络,利用注意力机制让每一个节点基于其元路径的相邻节点得到当前节点的嵌入;将所有节点的嵌入输入排序模型,得到当前节点的得分;将所有节点的得分进行排序,输出最有可能导致缺陷的节点。本发明实现了一种利用修复缺陷的提交来自动定位导致缺陷根本原因的代码变更的办法,本发明能够自动识别定位导致缺陷的根本原因,减少了开发人员所花的时间和成本,提高了维护效率和软件质量。
主权项:1.一种自动定位缺陷根本原因的方法,其特征在于,包括以下步骤:S1、从提交中获取代码变更信息c,其中,代码变更信息c包括变更之前的源代码src_code、变更之后的源代码dst_code和修改的行t,修改的行t包括删除行tdel和增加行tadd;S2、对提交中的代码变更信息c进行处理,从t、src_code和dst_code中提取所有修改的行之间的关系,以构建异质图G;S3、将异质图G输入异质图注意力神经网络中,对于异质图G中的每个节点ni得到该节点对应的嵌入向量表示Ri;S4、将节点的嵌入向量表示Ri输入排序神经网络中,得到当前节点的分数si;S5、将所有节点对应的分数进行排序,最大分数对应的节点为当前缺陷的根本原因的节点。
全文数据:
权利要求:
百度查询: 浙江大学 一种自动定位缺陷根本原因的方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。