QTP sky下Native Properties和Identification Propertie的区别

来源:互联网 发布:欧德堡牛奶 知乎 编辑:程序博客网 时间:2024/06/01 09:04

      首先解释下这两个关键词的意思: Native Properties=本地的属性,Identification Properties=识别属性。

平时在使用qtp的sky工具识别页面对象,很少关注这两个选项的区别。因为对于web对象的识别都是基于QTP自身对页面对象的封装处理,所以我们只需要根据QTP封装的方法来识别对象就ok了,故此,大多情况下都是使用Identification Properties(识别属性)。直到今天,在思索页面对象识别机制的时候,才对Native Properties(本地属性)感到很疑惑。QTP搞这个选项究竟是做神马用的。

个人总结区别如下:

1、(Native Properties)是web对象自身存在的所有属性,这些属性可以通过html对其进行解读,如果有用firebug工具来识别,会发现其捕获的对象属性是一致的。

(Identification Properties)是QTP自身处理后封装的属性,这些属性的封装信息可以在QTP注册表中发现(Mercury Interactive->QuickTest Professional->MicTest->Attributes)。有意思吧,我估计QTP这样做目的是为了更好地处理页面对象的识别,也给用户自定义对象提供扩展的空间。

2、根据如上根本性的分析,会发现本地属性的信息会多于识别属性。 本地方法(native operations)的信息会多于测试对象属性(test object operations)。


领悟:

QTP整这么一个Native Porperties 和 Native operations,基本原则是多一个不如少一个,反正用户都是功能多多益善。但是实际工作中我认为会用到的很少吧。重点关注Identification Properties 和 Test object operations 就可以了。因为我们在对页面对象的识别操作无非关心对象的属性和方法。有时忘记了某个对象的属性和方法可以通过sky提供这个功能的查找(特别是用描述性编程和调试脚本的时候)。



原创粉丝点击