符號執行
什麼是符號執行?
符號執行是一種軟體測試技術,有助於生成測試資料並證明程式質量。
使用符號執行的步驟
執行需要選擇一組資料值所執行的路徑。使用實際資料執行的程式會輸出一系列值。
在符號執行中,資料被替換為符號值以及表示式集,每個輸出變數一個表示式。
符號執行的常用方法是對程式進行分析,從而建立流圖。
流圖示識決策點以及與每個流關聯的賦值。透過從入口點遍歷流圖,生成賦值語句和分支謂詞的列表。
符號執行的問題
如果不知道迴圈的迭代次數,則符號執行無法繼續。
第二個問題是呼叫任何行外程式碼或模組呼叫。
符號執行不能與陣列一起使用。
符號執行無法識別不可行路徑。
符號執行應用
路徑域檢查
測試資料生成
分割槽分析
符號除錯
廣告