GoFuzz自定義語料輸入流程 記錄

2021-10-23 15:06:13 字數 819 閱讀 1768

在使用gofuzz的過程中,發現自己輸入的corpus好像沒有被執行。

遂審計一下**,追蹤一下輸入的corpus的處理流程。

在一次測試過程中,我輸入的初始語料如下

但進化出的可崩潰語料卻是這些

":"

""""

"}""t"

"""00"

"{\"\"0"

這都是嘛玩意兒,根本看不出跟我的初始輸入有啥血緣關係。

於是跟進一下**,來學習一下corpus的處理流程。

go-fuzz命令的入口為main函式。

其中,呼叫了coordinatormainhub.connect函式。

工作程序包含兩個迴圈:

流程圖如下:

所以說gofuzz還是執行了我給的初始corpus,只是由於某種原因沒有輸出crash…

可能是沒有當作模糊測試的重點?

這些都只是猜測

我不想花太多時間在研究如何優雅的使用gofuzz上了。

於是直接到gofuzz倉庫的issue中尋找答案。

在issue#289中,找到了類似的思考。

官方給出的更優解是fzgo,乙個整合了go-fuzz和go test的工具。

後面我會把研究精力,從gofuzz的原理研究 轉移到 fzgo的體驗和測試上。

自定義View ViewGroup流程

一 自定義view 1.onmeasure int widthmeasurespec,int heightmeasurespec int wspecmode measurespec.getmode widthmeasurespec int wspecsize measurespec.getsize ...

自定義cell的流程

自定義cell的流程 通過 自定義cell的流程 1 新建乙個繼承自uitableviewcell的類 2 重寫initwithstyle reuseidentifier方法 新增所需顯示的子控制項 不需要設定子控制項的資料和frame 進行子控制項一次性的屬性設定 有些屬性只需設定一次,比如字型 ...

簡單自定義mybatis流程

catch exception e 建立資料來源物件設定連線資料庫引數 public void creatdatasource catch exception e return proxy public static sqlsession opensession 五.建立executor工具類 執行...