[發(fā)明專利]代碼缺陷輔助修復方法及系統有效
| 申請?zhí)枺?/td> | 201910369266.6 | 申請日: | 2019-05-05 |
| 公開(公告)號: | CN110221933B | 公開(公告)日: | 2023-07-21 |
| 發(fā)明(設計)人: | 周秀霞;何軍;焦建鋒;彭程潤;王初晴 | 申請(專利權)人: | 北京百度網訊科技有限公司 |
| 主分類號: | G06F11/07 | 分類號: | G06F11/07 |
| 代理公司: | 北京潤平知識產權代理有限公司 11283 | 代理人: | 肖冰濱;王曉曉 |
| 地址: | 100085 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 缺陷 輔助 修復 方法 系統 | ||
本發(fā)明提供一種代碼缺陷輔助修復方法及系統,屬于軟件開發(fā)領域。所述代碼缺陷輔助修復方法包括:獲取待修復的缺陷代碼;基于推薦樣本庫確定與所述待修復的缺陷代碼相對應的目標參考修復代碼,其中所述推薦樣本庫中預存儲多組相互對應的參考缺陷代碼和參考修復代碼;基于所述目標參考修復代碼,提供代碼缺陷輔助修復服務。由此,應用預配置的搜集了過往缺陷代碼修復參考樣本的推薦樣本庫,能夠為待修復的缺陷代碼提供修復參考案例,輔助開發(fā)人員修復代碼缺陷,提高了代碼修復效率和應用程序代碼質量。
技術領域
本發(fā)明涉及軟件開發(fā)技術領域,具體地涉及一種代碼缺陷輔助修復方法及系統。
背景技術
隨著信息化時代的到來,多種多樣的軟件為人們的生活帶來了便利,同樣也使得軟件開發(fā)技術得到了蓬勃發(fā)展。
在軟件雛形完成之后,需要對其進行測試,以確定此軟件是否存在代碼缺陷或漏洞(bug);以及,當存在代碼缺陷時,需要開發(fā)人員進行代碼調整,從而修復代碼缺陷。
但是,本申請的發(fā)明人在實踐本申請的過程中發(fā)現上述目前相關技術中至少存在如下的缺陷:代碼人員在找到代碼缺陷之后,往往缺乏修復參考案例,其在修復過程中需要進行多次嘗試和調試,導致了大量時間的浪費和軟件調試成本的提高。
發(fā)明內容
本發(fā)明實施例的目的是提供一種代碼缺陷輔助修復方法及系統,用以至少解決目前相關技術中代碼缺陷缺乏修復參考而導致的調試時間和人力成本的過度消耗的問題。
為了實現上述目的,本發(fā)明實施例提供一種代碼缺陷輔助修復方法,包括:獲取待修復的缺陷代碼;基于推薦樣本庫確定與所述待修復的缺陷代碼相對應的目標參考修復代碼,其中所述推薦樣本庫中預存儲多組相互對應的參考缺陷代碼和參考修復代碼;基于所述目標參考修復代碼,提供代碼缺陷輔助修復服務。
可選的,所述基于推薦樣本庫確定與所述待修復的缺陷代碼相對應的目標參考修復代碼包括:確定所述待修復的缺陷代碼的目標缺陷特征信息;基于推薦樣本庫確定與所述目標缺陷特征信息相匹配的目標參考修復代碼,其中所述推薦樣本庫中還預存儲了多組相互對應的參考缺陷特征信息和參考修復代碼。
可選的,該方法還包括針對所述推薦樣本庫的建庫步驟,所述建庫步驟包括:獲取第一版本的應用程序代碼,并統計所述第一版本的應用程序代碼中的第一缺陷代碼集合;獲取第二版本的應用程序代碼,并統計所述第二版本的應用程序代碼中的第二缺陷代碼集合;比較所述第一缺陷代碼集合和所述第二缺陷代碼集合,確定在所述第一版本和所述第二版本的所述應用程序代碼之間已修復的缺陷代碼;將所述已修復的缺陷代碼作為參考修復代碼,并將所述參考修復代碼所對應的缺陷代碼確定為相對應的參考缺陷代碼,以及,根據相互對應的所述參考修復代碼和所述參考缺陷代碼構建所述推薦樣本庫。
可選的,所述根據相互對應的所述參考修復代碼和所述參考缺陷代碼構建所述推薦樣本庫還包括:確定并提取所述參考缺陷代碼所對應的參考缺陷特征信息;根據相互對應的所述參考缺陷特征信息、所述參考缺陷代碼和所述參考修復代碼,構建所述推薦樣本庫。
可選的,所述建庫步驟還包括:基于多個不同種類的應用程序代碼,構建所述推薦樣本庫。
可選的,所述確定所述待修復的缺陷代碼的目標缺陷特征信息包括:將包括所述待修復的缺陷代碼的源文件轉換為抽象語法樹,其中所述抽象語法樹上配置有與源代碼位置相對應的多個節(jié)點結構;根據所述待修復的缺陷代碼所處的缺陷源代碼位置,確定在所述抽象語法樹上相對應的缺陷節(jié)點結構;以及將所述缺陷節(jié)點結構中的節(jié)點代碼信息按照預設的消息摘要算法進行計算,以得出對應的目標缺陷消息摘要值,其中所述目標缺陷特征信息包括所述目標缺陷消息摘要值。
可選的,所述推薦樣本庫中的所述參考缺陷特征信息包括參考缺陷消息摘要值,其中所述基于推薦樣本庫確定與所述目標缺陷特征信息相匹配的目標參考修復代碼包括:將所述目標缺陷消息摘要值與所述推薦樣本庫中的各個參考缺陷消息摘要值進行相似度計算;根據相似度計算結果,確定相匹配的所述目標參考修復代碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京百度網訊科技有限公司,未經北京百度網訊科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910369266.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:計算機及其控制方法
- 下一篇:一種車載系統恢復方法





