在掌握類與子類的測試、分層與增量之后。我們要討論面向對象層次結構測試的要點
主要從以下三個方面去展開:
· 對認定的對象的測試。
· 對認定的結構的測試。
· 對構造的類層次結構的測試。
1對認定對象的測試
OOA(面向對象分析測試)中認定的對象是對問題空間中的結構、其他系統、沒備、
被記憶的事件、系統涉及的人員等實際實例的抽象。對它的測試可以從如下方面考慮:
· 認定的對象是否全面,其名稱應該盡量準確、適用,是否問麒空間中所涉及到的實例都反映在認定的抽象對象中。
. 認定的對象是否具有多個屬性。只有一個屬性的對象通常應看做其他對象的屬性 而不是抽象為獨立的對象。
. 對認定為同一對象的實例是否有共同的、區別于其他實例的共同屬性,是否提供 或需要相同的服務,如果服務隨著不同的實例而變化t認定的對象就需要分解或利用繼承性來分類表示。
. 如果系統沒有必要始終保持對象代表的實例信息,提供或者得到關于它的服務,認定的對象也無必要。
2對認定結構的測試
認定的結構指的是多種對象的組織方式,用來反映問題空間中的復雜實例和復雜關系。
認定的結構分為兩種:分類結構和組裝結構。分類結構體現了問題空間中實例的一般與特殊的關系:組裝結構體現了問題空間中實例整體與局部的關系。
認定的分類結構測試要點:
. 對于結構中的一種對象,尤其是處于高層的對象,是否在問題空間中含有不同于
下一層對象的特殊可能性,即是否能派生出下一層對象。
. 對于結構中的一種對象,尤其是處于同一低層的對象,是否能抽象出在現實中有
意義的更一般的上層對象。
. 對所有認定的對象,是否能在問題空間內向上層抽象出在現實中有意義的對象。
. 高層對象的特性是否完全體現下層的共性.低層的對象是否有高層特性基礎上的
特殊性。
認定的組裝結構的測試要點:
. 整體(對象)和部件(對象)是否在考慮的問題空間中有實際應用,其組裝關系
是否符合現實的關系。
· 整體(對象)中是否遺漏了反映在問題空間中的有用部件(對象)。
· 部件(對象)是否能夠在空間中組裝新的有現實意義的整體(對象)。
3對構造類層次結構的測試
為了能充分發揮面向對象繼承共享特性,OOD(面向對象設計測試)的類層次結構通
?;贠OA中產生的分類結構原則來組織,著重體現父類和子類間的一般性和特殊性。
在當前的問題空間,對類層次結構的主要要求是能了解空間構造實現全部功能的結構框架。
為此測試要注意如下幾個方面:
· 類層次結構是否涵蓋了所有定義的類。
· 是否能體現OOA中所定義的實例關聯、消息關聯
· 子類是否具有父類沒有的新特性。
· 子類間的共同特性是否完全在父類中得以體現。