Rss订阅IQuickTest(关于如何订阅?)
作者:zzxxbb112
时间:2010/3/17 版权所有,侵权必究。
出处:http://blog.csdn.net/zzxxbb112
看过我第二章讲座的朋友应该都明白什么是封装属性,以及封装属性与接口属性的区别
http://blog.csdn.net/zzxxbb112/archive/2009/08/27/4489342.aspx
大家都知道,我们平时需要查看对象的封装属性可以打开spy,然后选择我们需要查看的对象,SPY中即会显示出此对象的属性。
图中我们可以看到在identification properties下有很多属性,这些属性就是QTP的自己封装的一些属性。同时这些属性我们可以通过GetROProperty方法进行访问。
msgbox Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").GetROProperty("name") |
这里我们访问一下NAME属性,我们可以看到它的值为wd
然后我们执行下脚本,会弹出以下对话框
那既然在SPY中所有的属性都能访问,那我们再来看一个脚本
msgbox Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").GetROProperty("Class Name") |
访问下Class Name属性看看是不是能够获得值:WebEdit
执行完脚本后我们可以看到弹出的内容为空。这是为什么?
其实因为QTP封装此属性的名称不是这个,其实应该是micClass
msgbox Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").GetROProperty("micclass") |
执行以上语句就可以得到我们想要的结果
那大家肯定会问为什么是micClass,而不是Class Name呢?
别急,答案很快就会告诉大家~
首先我们打开注册表运行regedit
进入到HKEY_CURRENT_USER -> software -> Mercury Interactive -> QuickTest Professional -> MicTest -> Attributes
这个目录下,当我们展开Attributes这个目录时我们会看到很多我们熟悉的属性,没错这里面包含了所有的QTP的封装属性。
在此目录下我们可以找到micClass属性,而Class Name属性是没有的,所以刚才我们打印出来是空的就是这个原因。
还有很多QTP隐藏的属性,并且一部分属性在QTP的所有帮助文档中都没有提到。
这里我们就随便找一个QTP spy中没有的属性来试试,我们这里以source_index为例
index = Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").GetROProperty("source_index") Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("source_index:=" & index).Set "zzxxbb112" |
执行以上脚本我们可以看到百度搜索框成功输入了zzxxbb112,原理主要是通过source_index获取对象的索引,并通过描述此属性并成功对此对象进行控制。在这个目录下我们还可以看到一些平时我们所常用一些隐藏属性,例如creationtime,index等,还有很多我们从来没有看到过的属性,有兴趣的朋友可以一个个试试。
注意:
每个属性都是有对应的对象的,比如creationtime属性只能用在Browser对象上,这点是需要大家注意的。
如有任何问题请去IquickTest Q&A问题库进行提问