本文擋描述的是Logiscope——Audit中函數作用域常用度量元的具體含義。
對每個度量元的解釋分為以下幾部分:
首先是該度量元的原文名稱,后面是該度量元的代號,跟在后面的是Audit質量模型為該度量元設的參考值(用中括號括起。當然,對于這個范圍值,我們可以對它進行修改),再往下就是對該度量元含義的具體解釋。
2函數度量元下面分別介紹函數作用域中各個度量元的具體含義。注意,下面討論的所有問題都是站在一個函數的角度上的,這一點對于我們理解這些度量元很重要。
2.1 "Cyclomatic Number" : ct_vg [ 1 , 10 ]度量元名稱:函數的圈復雜度。
解釋說明:
函數圈復雜度的計算方法為:將函數流程圖中各節點(開始和結束結點除外)的引出邊的數量減去一后的值相加,最后再在這個和的基礎上加一?梢,當一個函數中條件判斷的地方越多時,它的ct_vg就會越大。
如果該值過大,會增大函數的復雜性,影響我們對函數的理解。
2.2 "Number of Branches" : ct_bran [ 0 , 0 ]度量元名稱:函數中非結構化語句的數量。
解釋說明:
非結構化語句包括:goto語句、在循環中使用的break、continue語句。
該度量元是為了使程序編寫符合結構化的要求。
2.3 "Number of Declared Variables" : dc_lvars [ 0 , 5 ]度量元的名稱:函數中定義的變量的數量。
解釋說明:
在函數體內部定義的變量的數量。函數中局部變量定義的過多,會增大代碼的復雜性,影響對函數的理解。
2.4 "Number of parameters" : ic_param [ 0 , 5 ]度量元的名稱:函數參數的數量。
解釋說明:
函數的參數過多,會使函數易于受外部(其他部分的代碼)變化的影響,從而影響維護工作。
函數的參數過多也會增大測試的工作量。
2.5 "Number of Direct Calls" : dc_calls [ 0 , 5 ]度量元的名稱:函數中調用其它函數的數量。
解釋說明:
在函數體中調用其它函數的數量,對同一函數的多次調用計為一次。
該值過大,首先是會使函數易于受外部(其他部分的代碼)變化的影響,從而增加維護工作的工作量。
其次,該值過大,也會增加閱讀程序的人在理解程序上的困難。
2.6 "Number of Exits" : ct_exit [ 0 , 1]度量元的名稱:函數出口的數量。
解釋說明:
也就是函數體中退出點的數量。
在一個函數中存在一個以上的出口會增加函數出錯的可能性,建議單出口。
2.7 "Number of Distinct Uses of External Attributes" : ic_varpe [ 0 , 2 ]度量元的名稱:函數中使用其它類的數據成員的數量。
解釋說明:
所謂函數中使用的其它類的數據成員的數量,也就是在函數體中對外部類(與該函數所屬的類不是同一個類)的數據成員的使用數量,對同一數據成員的多次使用計為一次。
這個度量元的用意也很好理解,就是為了盡量減少函數與其它類的耦合關系。
2.8 "Number of paths" : ct_path [ 1 , 60 ]度量元的名稱:函數中執行路徑的數量。
解釋說明:
函數中執行路徑過多,會極大的增大測試的工作量。
文章來源于領測軟件測試網 http://www.kjueaiud.com/