SilkTest循序漸進5-類的繼承 軟件測試
說實話,silktest對面向對象的支持遠沒有C++和Java那么強大。只能說silktest實現了基本的類的定義,繼承,覆蓋。其他很多高級的面向對象的機制,例如重載,silktest都無法實現,所以用4Test寫一些類層次結構的時候可能會遇到困難。實踐證明,盡量減少類的繼承層數可以有效減少錯誤的發生的幾率。
其實silktest的面向對象機制只有兩個重要的關鍵字,一個是winclass,它是用來定義類的,相當于其他高級語言的class。另外一個是window,它用來定義一個某類的對象。下面是一個例子,定義了一個People類,并且定義了一個People類的對象worker
view plaincopy to clipboardprint?
01.winclass People
02.
03.window People work
winclass People
window People work
看上去很簡單是吧,好,下面大家可以看看下面的例子。在include文件People.inc中,定義了一個基類People,和它的一個子類Student?;惗x了兩個成員變量分別是name和age,并且有相應的成員函數來set和get成員變量。子類Student另外定義了一個成員變量sex,相應地也有成員函數來set和get該變量。初次以外,Student還定義了兩個函數來對該類的對象進行賦值和取值。在另外一個文件TestStudent.t中,聲明了三個Student對象stu1,stu2, stu3,對他們進行一系列的賦值和取值操作,然后打印出對象的值,希望這個例子對你理解silktest中類的繼承和對象的使用有所幫助。
好,來看看具體的代碼吧。
view plaincopy to clipboardprint?
01.[ ] //FileName: People.inc
02.[ ] //Author: Yuetian Zeng from http://blog.csdn.net/yuetian/
03.[ ]
04.[ ]
05.[ ] // base class
06.[-] winclass People
07. [ ] // declare two data members and set default value for them
08. [ ] string sName = "SilkTest"
09. [ ] int iAge = 10
10. [ ]
11. [ ] // set and get Age
原文轉自:http://www.anti-gravitydesign.com