[發(fā)明專利]一種對分布式系統進行模糊測試的方法及系統有效
| 申請?zhí)枺?/td> | 202010832802.4 | 申請日: | 2020-08-18 |
| 公開(公告)號: | CN112463581B | 公開(公告)日: | 2021-09-21 |
| 發(fā)明(設計)人: | 王明哲;周熾金;梁杰;姜宇 | 申請(專利權)人: | 清華大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F8/41;G06F8/73 |
| 代理公司: | 北京路浩知識產權代理有限公司 11002 | 代理人: | 陳新生 |
| 地址: | 100084 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 分布式 系統 進行 模糊 測試 方法 | ||
1.一種對分布式系統進行模糊測試的方法,其特征在于,包括:
獲取待測系統中待測程序的預設源代碼,使用編譯器對所述預設源代碼進行編譯并合并,得到全程序中間表示;
對所述全程序中間表示進行插樁,得到插樁后的中間文件;
對所述插樁后的中間文件進行代碼生成,輸出若干二進制可執(zhí)行文件;
基于所述若干二進制可執(zhí)行文件由測試工具啟動所述待測系統,并對所述待測系統進行初始化;
待所述待測系統完成初始化,所述測試工具啟動模糊測試,判斷所述待測系統是否存在異常。
2.根據權利要求1所述的對分布式系統進行模糊測試的方法,其特征在于,所述待所述待測系統完成初始化,所述測試工具啟動模糊測試,判斷所述待測系統是否存在異常,之后還包括:
若判斷獲知所述待測系統存在異常,則記錄異常信息并重新啟動所述待測系統,使所述待測系統重新執(zhí)行初始化。
3.根據權利要求1或2所述的對分布式系統進行模糊測試的方法,其特征在于,所述獲取待測系統中待測程序的預設源代碼,使用編譯器對所述預設源代碼 進行編譯并合并,得到全程序中間表示,具體包括:
提取所述預設源代碼,使用所述編譯器進行編譯,得到中間文件;
采用全程序優(yōu)化技術,將同屬于單個完整可執(zhí)行文件的若干中間文件進行合并,得到所述單個完整可執(zhí)行文件的中間表示;
對所有中間表示內部的基本塊進行無沖突標號,導出得到所述全程序中間表示。
4.根據權利要求1所述的對分布式系統進行模糊測試的方法,其特征在于,所述對所述全程序中間表示進行插樁,得到插樁后的中間文件,具體包括:
對所述待測程序的每個基本塊插入統計代碼,由所述統計代碼得到每個基本塊覆蓋次數;
基于所述每個基本塊覆蓋次數,對所述待測程序的中間文件提取源代碼的函數調用圖、控制流圖和基本塊信息。
5.根據權利要求4所述的對分布式系統進行模糊測試的方法,其特征在于,所述基于所述若干二進制可執(zhí)行文件由測試工具啟動所述待測系統,并對所述待測系統進行初始化,具體包括:
所述測試工具基于所述基本塊信息,初始化共享內存;
由所述測試工具的監(jiān)控功能組件運行所述待測系統的引導程序,并開始初始化所述待測系統;
由所述測試工具的調度功能組件接收若干進程發(fā)送的握手消息,根據所述握手消息識別所述若干進程的二進制路徑,并回復所述二進制路徑在所述共享內存中的偏移量;
所述若干進程收到回復消息后,映射所述共享內存至當前進程的地址空間,并設置基本塊覆蓋計數器的指針為新的共享內存;
待所述待測系統完成初始化,向所述調度功能組件發(fā)出完成消息。
6.根據權利要求1所述的對分布式系統進行模糊測試的方法,其特征在于,所述待所述待測系統完成初始化,所述測試工具啟動模糊測試,判斷所述待測系統是否存在異常,具體包括:
由所述測試工具所述待測系統發(fā)送當前輸入,所述待測系統執(zhí)行所述當前輸入,向所述測試工具反饋當前輸入已完成的信息,并等待下一輸入;
所述測試工具根據共享內存收集全部進程的覆蓋信息,將所述覆蓋信息傳遞給輸入生成組件作為反饋;
所述測試工具基于所述反饋獲取調試事件,基于所述調試事件判斷所述待測系統是否存在異常。
7.一種對分布式系統進行模糊測試的系統,其特征在于,包括:
獲取模塊,用于獲取待測系統中待測程序的預設源代碼,使用編譯器對所述預設源代碼 進行編譯并合并,得到全程序中間表示;
插樁模塊,用于對所述全程序中間表示進行插樁,得到插樁后的中間文件;
生成模塊,用于對所述插樁后的中間文件進行代碼生成,輸出若干二進制可執(zhí)行文件;
初始化模塊,用于基于所述若干二進制可執(zhí)行文件由測試工具啟動所述待測系統,并對所述待測系統進行初始化;
測試模塊,用于待所述待測系統完成初始化,所述測試工具啟動模糊測試,判斷所述待測系統是否存在異常。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于清華大學,未經清華大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010832802.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:用于自動地捕獲技術轉移知識的系統和方法
- 下一篇:感應位置傳感裝置及其方法





