[發(fā)明專利]基于路徑記錄截斷的軟件模糊測試方法及裝置有效
| 申請?zhí)枺?/td> | 201910012433.1 | 申請日: | 2019-01-07 |
| 公開(公告)號: | CN109885479B | 公開(公告)日: | 2022-02-01 |
| 發(fā)明(設(shè)計)人: | 宋曉斌;柳曉龍;王允超;武澤慧;魏強(qiáng);曹琰 | 申請(專利權(quán))人: | 中國人民解放軍戰(zhàn)略支援部隊信息工程大學(xué) |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 鄭州大通專利商標(biāo)代理有限公司 41111 | 代理人: | 周艷巧 |
| 地址: | 450000 河*** | 國省代碼: | 河南;41 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 路徑 記錄 截斷 軟件 模糊 測試 方法 裝置 | ||
1.一種基于路徑記錄截斷的軟件模糊測試方法,其特征在于,包含如下內(nèi)容:
A)構(gòu)建項目數(shù)據(jù)集并提取條件代碼結(jié)構(gòu),將提取到的條件代碼結(jié)構(gòu)進(jìn)行模型輸入數(shù)據(jù)處理后,作為低頻路徑轉(zhuǎn)移條件代碼結(jié)構(gòu)分類模型的輸入進(jìn)行模型訓(xùn)練,其中,分類模型采用LSTM網(wǎng)絡(luò)模型結(jié)構(gòu);
B)在模糊測試器插樁代碼中增加路徑截斷標(biāo)記與標(biāo)記檢查指令;
C)針對待測試程序,提取條件代碼結(jié)構(gòu)并進(jìn)行模型輸入數(shù)據(jù)處理,將處理后的數(shù)據(jù)作為訓(xùn)練好的分類模型輸入,識別出低頻路徑轉(zhuǎn)移條件代碼結(jié)構(gòu),并在源文件中相應(yīng)位置進(jìn)行源代碼級插樁,依據(jù)路徑截斷標(biāo)記進(jìn)行路徑截斷并完成源代碼模糊測試。
2.根據(jù)權(quán)利要求1所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,A)提取條件代碼結(jié)構(gòu)中,首先定義面向源碼數(shù)據(jù)集的符號描述并提取數(shù)據(jù)集中所有的條件代碼結(jié)構(gòu),然后將提取的條件代碼結(jié)構(gòu)進(jìn)行代碼解析,并對解析結(jié)果進(jìn)行標(biāo)簽化處理獲取代碼token序列;對token序列進(jìn)行向量轉(zhuǎn)換,獲取分類模型輸入數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,A)中,提取數(shù)據(jù)集中所有的條件代碼結(jié)構(gòu),包含如下內(nèi)容:首先對源碼數(shù)據(jù)集進(jìn)行預(yù)處理,提取有效代碼;然后,對有效代碼提取條件結(jié)構(gòu)集合,并構(gòu)建棧結(jié)構(gòu),同時記錄代碼段與源碼數(shù)據(jù)集位置對應(yīng)關(guān)系,依據(jù)棧結(jié)構(gòu)對嵌套的條件結(jié)構(gòu)集合進(jìn)行迭代處理,獲取最小化的代碼片段。
4.根據(jù)權(quán)利要求2所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,A)中,代碼解析過程,包含如下內(nèi)容:采用抽象語法樹提取代碼序列并符號化處理,同時依據(jù)代碼序列中詞條意義進(jìn)行分組,獲取同義詞集合,擴(kuò)充代碼序列。
5.根據(jù)權(quán)利要求2所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,A)中,對token序列進(jìn)行向量轉(zhuǎn)換,包含如下內(nèi)容:利用word2vec進(jìn)行文本向量化轉(zhuǎn)化,通過設(shè)定特征向量維度與詞頻參數(shù)輸出,獲取詞向量模型;根據(jù)該詞向量模型獲取詞典索引字典及詞向量字典,依據(jù)所述詞典索引字典及詞向量字典獲取分類模型輸入數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,B)中,增加路徑截斷標(biāo)記與標(biāo)記檢查指令過程中,通過在源碼數(shù)據(jù)集中插入路徑截斷標(biāo)記,該路徑截斷標(biāo)記在代碼bss段進(jìn)行定義;并在原始插樁入口處進(jìn)行路徑截斷標(biāo)記檢查。
7.根據(jù)權(quán)利要求6所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,C)中,針對測試程序,依靠訓(xùn)練過程中分類模型識別到的錯誤處理代碼段,并結(jié)合源碼數(shù)據(jù)集中條件代碼結(jié)構(gòu)與位置索引,采用內(nèi)外插樁方式對錯誤處理代碼段進(jìn)行插樁。
8.根據(jù)權(quán)利要求7所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,C)中,針對路徑截斷標(biāo)記在插樁代碼后的情形,取消當(dāng)前條件的原始插樁,采用空指令進(jìn)行插樁并在指令注釋處加入注釋標(biāo)記。
9.根據(jù)權(quán)利要求7所述的基于路徑記錄截斷的軟件模糊測試方法,其特征在于,C)中,針對同一條條件語句在不同源碼數(shù)據(jù)集中的編譯優(yōu)化問題,設(shè)定在標(biāo)記分支處取消插樁。
10.一種基于路徑記錄截斷的軟件模糊測試裝置,其特征在于,包含:訓(xùn)練模塊、標(biāo)記模塊和測試模塊,其中,
訓(xùn)練模塊,用于構(gòu)建項目數(shù)據(jù)集并提取條件代碼結(jié)構(gòu),將提取到的條件代碼結(jié)構(gòu)進(jìn)行模型輸入數(shù)據(jù)處理后,作為低頻路徑轉(zhuǎn)移條件代碼結(jié)構(gòu)分類模型的輸入進(jìn)行模型訓(xùn)練,其中,分類模型采用LSTM網(wǎng)絡(luò)模型結(jié)構(gòu);
標(biāo)記模塊,用于在模糊測試器插樁代碼中增加路徑截斷標(biāo)記與標(biāo)記檢查指令;
測試模塊,用于針對待測試程序,提取條件代碼結(jié)構(gòu)并進(jìn)行模型輸入數(shù)據(jù)處理,將處理后的數(shù)據(jù)作為訓(xùn)練好的分類模型輸入,識別出低頻路徑轉(zhuǎn)移條件代碼結(jié)構(gòu),并在源文件中相應(yīng)位置進(jìn)行源代碼級插樁,依據(jù)路徑截斷標(biāo)記進(jìn)行路徑截斷并完成源代碼模糊測試。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國人民解放軍戰(zhàn)略支援部隊信息工程大學(xué),未經(jīng)中國人民解放軍戰(zhàn)略支援部隊信息工程大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910012433.1/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 路徑搜索系統(tǒng)、路徑搜索終端和路徑搜索方法
- 路徑計算方法、路徑計算單元及路徑計算系統(tǒng)
- 路徑顯示裝置、路徑顯示方法、路徑顯示程序及路徑顯示系統(tǒng)
- 路徑引導(dǎo)裝置、路徑引導(dǎo)方法及路徑引導(dǎo)程序
- 路徑搜索系統(tǒng)、路徑搜索方法及路徑搜索程序
- 路徑引導(dǎo)裝置、路徑引導(dǎo)方法以及路徑引導(dǎo)程序
- 路徑搜索系統(tǒng)、路徑搜索方法以及路徑搜索程序
- 路徑搜索裝置、路徑搜索系統(tǒng)及路徑搜索方法
- 路徑輸出方法、路徑輸出系統(tǒng)和路徑輸出程序
- 路徑評價裝置、路徑評價系統(tǒng)、路徑評價方法以及路徑評價程序





