我怎样才能 - 无需迭代,即使用.ChildObjects
- 将所有测试对象与数字属性中的任何非零值匹配?
包含的问题:我是否可以使用正则表达式匹配来匹配包含number
的属性值(即VarType
返回3(vbLong
)以获取getROProperty值这个属性)使用正则表达式匹配?我不这么认为。
例如:
Dim Descr: Descr=Description.Create
Descr ("micclass").Value="WebElement"
Descr ("height").Value=11
匹配我的网络应用程序中的某些控件,即Page.ChildObjects (Descr).Count > 0
。
但是将11
指定为字符串,即将高度线更改为:
Descr ("height").Value="11"
匹配零控件。
这非常糟糕,因为我因此无法查找height
不等于0的测试对象。这将是我所需要的。
我用
Descr ("height").Value="^[1-9][0-9]*$"
Descr ("height").RegularExpression=true
搜索具有非零height
值的所有实例,但由于字符串搜索不匹配,因此正则表达式匹配也不起作用。 (事实上,它确实没有)。
答案 0 :(得分:2)
It is known整数类型必须在描述中作为整数传递,不幸的是,正则表达式的使用无用。
我目前没有手头的QTP安装,但为了进一步调查,如果你使用
会发生什么Print Browser("myBrowser").WebElement("height:=11").ChildObjects.Count
和
Print Browser("myBrowser").WebElement("height:=^[1-9][0-9]*$").ChildObjects.Count
当然"myBrowser"
是您的浏览器定义。