SilkTest天龙八部系列5-类的属性

发表于:2011-03-31来源:作者:点击数: 标签:
SilkTest天龙八部系列5-类的属性 软件测试 SilkTest的 面向对象 机制让用户可以为类定义属性,用property语句实现。除此以外用户在类中还可以定义成员变量和不可变的setting属性。也就是是说Silktest类中可以有以下三种属性/变量被使用到: 属性(用property

  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.ltesting.net