[發明專利]代碼缺陷輔助修復方法及系統有效
| 申請號: | 201910369266.6 | 申請日: | 2019-05-05 |
| 公開(公告)號: | CN110221933B | 公開(公告)日: | 2023-07-21 |
| 發明(設計)人: | 周秀霞;何軍;焦建鋒;彭程潤;王初晴 | 申請(專利權)人: | 北京百度網訊科技有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07 |
| 代理公司: | 北京潤平知識產權代理有限公司 11283 | 代理人: | 肖冰濱;王曉曉 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 缺陷 輔助 修復 方法 系統 | ||
1.一種代碼缺陷輔助修復方法,包括:
獲取待修復的缺陷代碼;
基于推薦樣本庫確定與所述待修復的缺陷代碼相對應的目標參考修復代碼,其中所述推薦樣本庫中預存儲多組相互對應的參考缺陷代碼和參考修復代碼,且所述參考修復代碼為相應的所述參考缺陷代碼的已修復版本,所述參考修復代碼來自多個不同類別的應用程序,以豐富所構建的推薦樣本庫中的樣本;
基于所述目標參考修復代碼,提供代碼缺陷輔助修復服務,
其中,所述基于推薦樣本庫確定與所述待修復的缺陷代碼相對應的目標參考修復代碼包括:
確定所述待修復的缺陷代碼的目標缺陷特征信息;
基于推薦樣本庫確定與所述目標缺陷特征信息相匹配的目標參考修復代碼,其中所述推薦樣本庫中還預存儲了多組相互對應的參考缺陷特征信息和參考修復代碼。
2.根據權利要求1所述的方法,其中,該方法還包括針對所述推薦樣本庫的建庫步驟,所述建庫步驟包括:
獲取第一版本的應用程序代碼,并統計所述第一版本的應用程序代碼中的第一缺陷代碼集合;
獲取第二版本的應用程序代碼,并統計所述第二版本的應用程序代碼中的第二缺陷代碼集合;
比較所述第一缺陷代碼集合和所述第二缺陷代碼集合,確定在所述第一版本和所述第二版本的所述應用程序代碼之間已修復的缺陷代碼;
將所述已修復的缺陷代碼作為參考修復代碼,并將所述參考修復代碼所對應的缺陷代碼確定為相對應的參考缺陷代碼,以及,根據相互對應的所述參考修復代碼和所述參考缺陷代碼構建所述推薦樣本庫。
3.根據權利要求2所述的方法,其中,所述根據相互對應的所述參考修復代碼和所述參考缺陷代碼構建所述推薦樣本庫還包括:
確定并提取所述參考缺陷代碼所對應的參考缺陷特征信息;
根據相互對應的所述參考缺陷特征信息、所述參考缺陷代碼和所述參考修復代碼,構建所述推薦樣本庫。
4.根據權利要求2所述的方法,其中,所述建庫步驟還包括:基于多個不同種類的應用程序代碼,構建所述推薦樣本庫。
5.根據權利要求1所述的方法,其中,所述確定所述待修復的缺陷代碼的目標缺陷特征信息包括:
將包括所述待修復的缺陷代碼的源文件轉換為抽象語法樹,其中所述抽象語法樹上配置有與源代碼位置相對應的多個節點結構;
根據所述待修復的缺陷代碼所處的缺陷源代碼位置,確定在所述抽象語法樹上相對應的缺陷節點結構;以及
將所述缺陷節點結構中的節點代碼信息按照預設的消息摘要算法進行計算,以得出對應的目標缺陷消息摘要值,其中所述目標缺陷特征信息包括所述目標缺陷消息摘要值。
6.根據權利要求5所述的方法,其中,所述推薦樣本庫中的所述參考缺陷特征信息包括參考缺陷消息摘要值,其中所述基于推薦樣本庫確定與所述目標缺陷特征信息相匹配的目標參考修復代碼包括:
將所述目標缺陷消息摘要值與所述推薦樣本庫中的各個參考缺陷消息摘要值進行相似度計算;
根據相似度計算結果,確定相匹配的所述目標參考修復代碼。
7.根據權利要求1所述的方法,其中,所述基于所述目標參考修復代碼,提供代碼缺陷輔助修復服務包括:
發送所述目標參考修復代碼,或者,
發送所述目標參考修復代碼和在所述推薦樣本庫中與所述目標參考修復代碼相對應的參考代碼缺陷。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京百度網訊科技有限公司,未經北京百度網訊科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910369266.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:計算機及其控制方法
- 下一篇:一種車載系統恢復方法





