[發明專利]代碼覆蓋率統計方法、裝置、設備及計算機可讀存儲介質在審
| 申請號: | 202010914407.0 | 申請日: | 2020-09-01 |
| 公開(公告)號: | CN112069066A | 公開(公告)日: | 2020-12-11 |
| 發明(設計)人: | 張朝;陳展文;周杰;楊德鑫;肖潔;曾奶舉;王二蒙 | 申請(專利權)人: | 招商銀行股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 深圳市世紀恒程知識產權代理事務所 44287 | 代理人: | 王韜 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 覆蓋率 統計 方法 裝置 設備 計算機 可讀 存儲 介質 | ||
1.一種代碼覆蓋率統計方法,其特征在于,所述代碼覆蓋率統計方法包括如下步驟:
當檢測到待測應用運行時,對所述待測應用中的應用實例對應的打樁數據進行實時收集;
若檢測到所述待測應用的轉存指令被觸發時,則根據所述轉存指令停止對所述打樁數據的實時收集,并將已收集的所有打樁數據轉換為覆蓋率元數據;
對各所述覆蓋率元數據進行合并,以獲取總覆蓋率元數據,基于所述總覆蓋率元數據確定所述待測應用對應的代碼覆蓋率。
2.如權利要求1所述的代碼覆蓋率統計方法,其特征在于,所述對所述待測應用中的應用實例對應的打樁數據進行實時收集的步驟,包括:
確定所述待測應用中是否存在多個應用實例;
若存在多個應用實例,則依次遍歷各所述應用實例,并確定遍歷的應用實例對應的運行環境是否為容器環境;
若是容器環境,則基于所述容器環境確定所述遍歷的應用實例對應的鏡像,并根據所述鏡像確定所述遍歷的應用實例對應的覆蓋率代理程序,根據所述覆蓋率代理程序對所述遍歷的應用實例對應的打樁數據進行實時收集。
3.如權利要求2所述的代碼覆蓋率統計方法,其特征在于,所述基于所述容器環境確定所述遍歷的應用實例對應的鏡像的步驟,包括:
獲取所述遍歷的應用實例對應的配置文件和覆蓋率代理程序,將所述配置文件和所述覆蓋率代理程序注入至所述遍歷的應用實例,并對具有所述配置文件和所述覆蓋率代理程序的遍歷的應用實例進行鏡像構建,以獲取所述遍歷的應用實例對應的鏡像。
4.如權利要求2所述的代碼覆蓋率統計方法,其特征在于,所述確定遍歷的應用實例對應的運行環境是否為容器環境的步驟之后,包括:
若所述遍歷的應用實例的運行環境是虛擬機環境,則將所述遍歷的應用實例對應的配置文件和覆蓋率代理程序注入至所述遍歷的應用實例,并啟動所述覆蓋率代理程序對所述遍歷的應用實例對應的打樁數據進行實時收集。
5.如權利要求1-4任一項所述的代碼覆蓋率統計方法,其特征在于,所述基于所述總覆蓋率元數據確定所述待測應用對應的代碼覆蓋率的步驟,包括:
基于預設的覆蓋率收集器將所述總覆蓋率元數據解析轉換為目標報告文件,根據所述應用實例對應的配置文件對所述目標報告文件進行過濾處理,以獲取所述待測應用對應的代碼覆蓋率。
6.如權利要求5所述的代碼覆蓋率統計方法,其特征在于,所述根據所述應用實例對應的配置文件對所述目標報告文件進行過濾處理,以獲取所述待測應用對應的代碼覆蓋率的步驟,包括:
若存在多個應用實例,則確定各所述應用實例對應的配置文件,并根據各所述配置文件依次對所述目標報告文件進行過濾處理,以獲取各所述應用實例對應的單次覆蓋率;
對各所述單次覆蓋率進行匯總,以獲取總覆蓋率,將各所述單次覆蓋率和所述總覆蓋率作為所述待測應用對應的代碼覆蓋率。
7.如權利要求6所述的代碼覆蓋率統計方法,其特征在于,所述根據各所述配置文件依次對所述目標報告文件進行過濾處理,以獲取各所述應用實例對應的單次覆蓋率的步驟,包括:
依次遍歷各所述配置文件,確定當前遍歷的當前配置文件中的接口路徑,根據所述接口路徑對所述目標報告文件進行過濾處理,以獲取所述當前配置文件對應的接口覆蓋率;
確定所述當前配置文件中的關鍵字,根據所述關鍵字對所述目標報告文件進行過濾處理,以獲取所述當前配置文件對應的應用覆蓋率,并將所述接口覆蓋率和所述應用覆蓋率作為所述當前配置文件對應的應用實例的單次覆蓋率,直至各所述配置文件遍歷完成。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于招商銀行股份有限公司,未經招商銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010914407.0/1.html,轉載請聲明來源鉆瓜專利網。





