QTP中的Description对象详解

本文详细介绍了QTP中Description对象的使用方法及其注意事项,包括创建Description对象、设置查找条件、验证查找结果等,并提供了使用正则表达式及参数化的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         QTP中,description对象的用途基于这样一个基础:QTP是建立在对象识别基础上的自动化测试工具,当需要操作一个对象时有三种方式:1,使用对象库中已经记录的控件名;2,使用描述性编程;3,使用description对象。

         其实对于23的理解是类似的,也就是说,当QTP在执行过程中需要给他一个描述,即“我要操作谁”,对于第二种方式,是告诉QTP“你给我找一个控件对象,找到它可能需要经过几层查找,但是我已经给定了每层查找的查找条件”;对于第三种方式,一般是这样告诉QTP,“我现在有某个控件对象,你帮我查找某些符合条件的孩子”

         上面说起来有点拗口,其实就是下面两种那个方式:

方式1

Browser("title:=Google").Page("title:=Google").Link("text:=Google").click

方式2

      Dim oDesc      

      Dim colObject   

      Set oDesc = Description.Create

      oDesc( "micclass" ).value = "Link"

      Set colObject = Browser( "title:=Google").Page("title:=Google").ChildObjects( oDesc )

 

那么我们在使用description对象时经常需要注意的点有:

1.  创建一个description对象的方法是:

Set oDesc = Description.Creates

 

2.  设置查找条件的方法是:

Set oDesc = Description.Create
oDesc( "micclass" ).value = "Link"
      oDesc( "text" ).value = "Images"
 

3.  看一个对象是否找到以及是否查找正确你可以有两种方法:

高亮查找到的控件:colObject(0).Highlight

检查查找到的控件个数:Msgbox colObject.Count

  

4.  给定限定条件你也可以使用正则表达式,不过注意设置开关打开:

Set oDesc = Description.Create
oDesc( "micclass" ).value = "Link"
oDesc( "text" ).value = "I.*age.*"  
oDesc( "text" ).regularExpression = True

注意:默认情况下正则表达式的开关是打开的

      如果你这里正则表达式的开关设置成为了false,那么你查找到的是text属性为“I.*age.*”的link

 

5.  注意某些description的成员设置属性值时,需要使用整型数,而非字符串。

Dim oDesc        
Dim colObject    
Set oDesc = Description.Create
oDesc( "micclass" ).value = "Link"
oDesc( "x" ).value = 51             
Set colObject = Browser( "title:=Google").Page("title:=Google").ChildObjects( oDesc ) 
MsgBox colObject.Count 
For x = 0 to colObject.Count - 1
 MsgBox colObject(x).GetROProperty("innertext")
Next

 

 

6.  限定条件可以参数化

Dim x
X=56
Browser("creationtime:="&x).Page("micclass:=Page").WebEdit("name:=q").Set "Description.Create"

 

参考资料:

下面这篇文章中主要介绍了description对象的各种使用规则,基本上看完这篇文章你就知道如何使用description对象了。

http://relevantcodes.com/qtp-all-about-the-description-object-description-create/

 

下面这篇文章主要介绍QTP中的封装属性的,例如我们在给定我们限定条件的时候,如何知道到底是应该给“Class Name”还是“MicClass”呢,那么你 打开注册表“HKEY_CURRENT_USER/Software/Mercury Interactive/QuickTest Professional/MicTest/Attributes/”看看有什么封装属性。

http://blog.csdn.net/zzxxbb112/archive/2010/03/17/5389043.aspx

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值