SilkTest天龍八部系列5-類的屬性 軟件測試
SilkTest的面向對象機制讓用戶可以為類定義屬性,用property語句實現。除此以外用戶在類中還可以定義成員變量和不可變的setting屬性。也就是是說Silktest類中可以有以下三種屬性/變量被使用到:
屬性(用property申明)
成員變量
屬性(用setting聲明)
用property語句定義的屬性可以讓用戶方便地使用=號來設置和獲取類的某些屬性,這里的屬性是指邏輯上的一些屬性,用來表現類的某些特征,這些特征可能是動態變化的。例如在某個時間點,一個控件所包含的子控件個數(我們可以通過一個循環來遍歷該控件來得到子控件的個數)又或者是一個頁面上當前得到焦點的控件名等等。
成員變量一般作為類的計算元素,或者是中間結果持有者,一般不用來直接表示復雜的邏輯內容。
至于setting屬性可以對類的一些系統屬性進行控制,例如,一個類是否繼承使用父類的tag,又或者是使用哪些父類的tag.
值得注意的是property的聲明是通過set和get兩個函數實現的,所謂的邏輯也是在這兩個函數中實現的。其中set只能有一個參數并且返回值是void,而get不能有參數,但是必須有返回值。set和get至少有一個要出現在property的聲明中。
另外setting的限制是只能在類中賦值,并且是不可更改的。
下面是一個可以運行的例子: 最后一行的注釋打開后會導致無法運行
view plaincopy to clipboardprint?
01.[-] winclass DemoDialog
02. [ ] Integer iZ = 30
03. [-] property iZPos
04. [-] void Set(integer i)
05. [ ] iZ = i
06. [-] integer Get()
07. [ ] return iZ
08. [ ] setting iXPos = 10
09. [ ] setting iYPos = 20
10.[ ]
11.[ ] window DemoDialog dd
12.[ ]
文章來源于領測軟件測試網 http://www.k11sc111.com/