[發明專利]一種代碼覆蓋率的測試方法、裝置和設備有效
| 申請號: | 201811220866.8 | 申請日: | 2018-10-19 |
| 公開(公告)號: | CN109460357B | 公開(公告)日: | 2021-10-29 |
| 發明(設計)人: | 劉三兵;溫磊 | 申請(專利權)人: | 北京新能源汽車股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京銀龍知識產權代理有限公司 11243 | 代理人: | 許靜;安利霞 |
| 地址: | 102606 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 代碼 覆蓋率 測試 方法 裝置 設備 | ||
本發明提供了一種代碼覆蓋率的測試方法、裝置和設備,涉及代碼覆蓋率的技術領域,所述方法包括:在采用待測的測試用例對被測軟件進行測試過程中,獲取測試用例中代碼執行的第一執行信息;根據第一執行信息,獲取第一執行信息中的有效代碼,并根據有效代碼生成第二執行信息;根據第二執行信息,計算采用測試用例對所述被測軟件進行測試的代碼覆蓋率。本發明通過獲取第一執行信息中的有效代碼,并根據有效代碼生成第二執行信息,并計算代碼覆蓋率,能夠快速對測試覆蓋率報告進行優化分析,便于快捷地得出測試用例的真實代碼覆蓋率,可高效地對測試質量進行評估,通過優化測試用例提高代碼覆蓋率,提高軟件測試的效率,提升測試質量。
技術領域
本發明涉及代碼覆蓋率的技術領域,具體涉及一種代碼覆蓋率的測試方法、裝置和設備。
背景技術
代碼覆蓋率是反映測試用例對被測軟件覆蓋程度的重要指標,搭建閉環虛擬集成環境并對被測軟件進行測試,測試完成可以生成覆蓋率測試報告,對測試報告進行分析可以確定出測試用例的覆蓋度,覆蓋度是衡量測試工作進展情況的重要指標,也是對測試工作進行量化的重要指標之一。控制器軟件代碼一般都是基于平臺化開發,會根據項目的不同,產生很多平臺化的死代碼(測試用例無法覆蓋到),對于分析真實的代碼覆蓋度有影響,但是,現有相關技術中,并未提供用于代碼覆蓋率報告的優化方案,導致無法客觀準確地評估測試用例覆蓋度。
因此,亟需一種代碼覆蓋率的測試方法、裝置和設備,能夠快速對測試覆蓋率報告進行優化分析的算法,便于快捷地得出測試用例的真實測試覆蓋度,可高效地對測試質量進行評估,通過優化測試用例提高測試覆蓋度,提高軟件測試的效率,提升測試質量。
發明內容
本發明實施例提供了一種代碼覆蓋率的測試方法、裝置和設備,用以解決測試用例無法覆蓋到的死代碼,導致無法客觀準確地評估測試用例覆蓋度的問題。
為解決上述技術問題,本發明實施例提供了一種代碼覆蓋率的測試方法,包括:
在采用待測的測試用例對被測軟件進行測試過程中,獲取所述測試用例中代碼執行的第一執行信息;
根據所述第一執行信息,獲取所述第一執行信息中的有效代碼,并根據有效代碼生成第二執行信息;
根據所述第二執行信息,計算采用所述測試用例對所述被測軟件進行測試的代碼覆蓋率。
優選的,所述在采用待測的測試用例對被測軟件進行測試過程中,獲取所述測試用例中代碼執行的第一執行信息包括:
根據被測軟件的測試需求編寫測試用例;
采用待測的測試用例對被測軟件進行測試;
在測試過程中,獲取所述測試用例中代碼執行的第一執行信息;
其中,所述第一執行信息包括:第一全部代碼行數、第一全部代碼的判定個數、第一覆蓋執行的代碼行數和第一覆蓋執行的判定個數。
優選的,所述根據所述第一執行信息,獲取所述第一執行信息中的有效代碼,并根據有效代碼生成第二執行信息包括:
判斷測試用例中被測試的代碼的判斷語句是否為第一語句;
若為是,根據所述第一執行信息,計算得到第二覆蓋執行的判定個數;其中,所述第二覆蓋執行的判定個數為第一覆蓋執行的判定個數加1;
其中,所述第二執行信息包括:第二覆蓋執行的判定個數。
優選的,所述根據所述第一執行信息,獲取所述第一執行信息中的有效代碼,并根據有效代碼生成第二執行信息還包括:
判斷測試用例中被測試的代碼的判斷語句是否為第二語句;
若為是,獲取所述第二語句判斷語句后的代碼的第一代碼行數;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京新能源汽車股份有限公司,未經北京新能源汽車股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811220866.8/2.html,轉載請聲明來源鉆瓜專利網。





