[發明專利]一種針對異常處理代碼的測試方法有效
| 申請號: | 201610122013.5 | 申請日: | 2016-03-03 |
| 公開(公告)號: | CN105701016B | 公開(公告)日: | 2018-06-29 |
| 發明(設計)人: | 王林章;王錚然;李宣東 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 南京知識律師事務所 32207 | 代理人: | 張蘇沛 |
| 地址: | 210093 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 異常處理 測試 插樁 測試工具 可信度 代碼選擇 評估 開發 | ||
1.一種針對異常處理代碼的測試方法,其特征在于:首先選取有充足測試用例的開源項目,通過獲取程序特征和不同插樁策略的錯誤植入對測試用例運行時路徑的影響,構造出針對程序特征的插樁策略分類器,以選出對測試路徑影響最小的插樁策略;然后以分類器算法為核心構造出測試工具,對待測項目生成對應錯誤植入集,選擇語句覆蓋測試工具生成測試用例覆蓋錯誤植入集,最終完成測試任務;該方法所包含的步驟為:
步驟一:評價不同插樁策略對測試可信度的影響;
具體步驟為:
步驟1.1:獲取程序執行路徑;
步驟1.2:根據不同插樁策略生成插樁位置;
步驟1.3:對不同插樁位置插樁后運行得到程序路徑;
步驟1.4:比較程序路徑和未插樁是否相同,獲得可信度;
步驟二:設計算法來自動根據待測異常處理代碼選擇插樁策略;
具體步驟為:
步驟2.1:由步驟一收集評價結果并獲取開源項目的異常處理相關代碼特征;
步驟2.2:構造分類器;
步驟2.3:使用交叉驗證確定分類器精度;
步驟三:開發測試工具來實現對java異常處理代碼的測試。
2.根據權利要求1所述的針對異常處理代碼測試方法,其特征在于,步驟一中:
所述測試可信度是指在錯誤植入下進行的測試活動,由于錯誤植入修改了源碼,有可能導致修改了某些系統條件,從而在接下來的測試過程中執行的路徑和應該執行的路徑不一致,這種情況下測試可信度就會降低。
3.根據權利要求1所述的針對異常處理代碼測試方法,其特征在于,步驟一中:
所述插樁策略是指在錯誤植入時在若干位置加入某條語句能完成相同的使程序跳轉到異常處理代碼的功能,不同的插樁策略就是指在不同的位置完成錯誤植入。
4.根據權利要求1所述的針對異常處理代碼測試方法,其特征在于,步驟二中:
由不同插樁策略對程序運行的影響,和代碼的靜態特征:異常類型、異常代碼和外部資源數據依賴、異常代碼和全局變量的數據依賴、異常距離方法入口的相對距離、所在方法的長度等信息,使用分類算法決策樹,經過訓練和交叉驗證,最終得出所需的分類器。
5.根據權利要求1所述的針對異常處理代碼測試方法,其特征在于,步驟三中:
測試工具的功能包括擴展訓練所需開源項目、對新項目進行針對異常處理代碼測試兩部分;擴展訓練所需開源項目使分類器的結果準確,測試工具對新項目進行針對異常處理代碼的測試。
6.根據權利要求5所述的針對異常處理代碼測試方法,其特征在于:
擴展訓練所需開源項目:將步驟一的方法用于用戶提供的項目,將收集新的數據加入,并修改分類器模型,重新進行交叉驗證;
對新項目進行針對異常處理代碼的測試:輸入用戶提供的新項目,分析其中異常處理結構,提取其特征,由分類器得到對應插樁策略,進行錯誤植入,生成用例以觸發異常,最終完成測試任務。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610122013.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:應用鏡體的立體動畫、活動影像播放及觀視構造
- 下一篇:數碼相機液晶屏遮陽罩





