關注點上的變數的操作是否正確
· 定義:賦值、初始化……
· 使用
def(n) def(e):節點n 邊e上所有定義的變數
use(n) use(e):節點n 邊e上所有使用的變數
控制流(li,lj)構成的du對是指,在li定義,在lj使用的變數
從li到lj的路徑上變數v是定義清晰的是指從li定到lj使用的中間,變數v沒有被重新定義過
有一條定義清晰的路徑,可以從li到lj
定義清晰並且是簡單的乙個子路徑
du(ni, nj, v):the set of du-paths from ni to nj
du(ni, v):the set of du-paths that start at ni
定義覆蓋(all-defs coverage, adc)
關於某個變數v,它所有定義的地方都至少覆蓋過一次
引用覆蓋(all-uses coverage, auc)
關於某個變數v,所有引用的地方都至少覆蓋一次
所有的定義引用路徑覆蓋(all-du-paths coverage, adupc)
覆蓋變數v的所有定義引用路徑
軟體測試 白盒測試 資料流測試
資料流測試方法根據程式中定義的位置和變數的使用來選擇程式的測試路徑。資料流測試是一種強大的工具,用於檢測由於編碼錯誤而導致的資料值的不當使用 資料流測試還需要集中精力進行這些測試 而不是基於覆蓋率的測試 包含資料值的變數具有定義的生命週期 建立,使用,終止 銷毀 變數作用域 begin outer ...
資料流測試
回顧 路徑測試將程式 看做是一種有向圖,根據有向圖的拓撲結構結合某些覆蓋指標來設計測試用例。然而程式中不同語句之間往往會有依賴關係,使得拓撲結構上可行的路徑,在邏輯上並不可行,資料流測試可以解決上述問題。資料流測試指關注變數接收值的點和使用 或引用 這些值的點的結構性測試形式 資料流測試用作路徑測試...
軟體測試學習筆記(三)控制 資料流測試
2.3 結構化覆蓋 2.4 控制流測試 2.5 資料流測試 1 什麼是頂點覆蓋?對每個測試需求,即可達頂點,都可從測試用例集t裡找到測試用例t,對應的測試路徑覆蓋該頂點,測試用例集t滿足頂點覆蓋。2 什麼是邊覆蓋?對每個測試需求,即可達邊,都可從測試用例集t裡找到測試用例t,對應的測試路徑覆蓋該邊,...