QTP 中如何得到一个界面中所有类型为webelement
set elements =Browser("XX").Page("XX").这个后面就不知道怎么写了 你这个问题提的真是有深度。WebElement 是qtp识别出来的对象。
qtp识别是靠属性的。
set elements =Browser("XX").Page("XX").WebElement("属性")
不知道你这么做想干什么? 不懂,你先录下看看属性 我是想获取整个界面中类型为WebElement,然后一一查看界面元素是否有缺失的 参考以下代码试试, 不知能否满足LZ要求:
set desc = Description.Create
desc("micclass").Value = "WebElement"
ocount = Browser("xxx").Page("xxx").ChildObject(desc).count'取出webelement数量
set obj1 = Browser("xxx").Page("xxx").ChildObject(desc)
for i= 0 to ocount-1
text = obj(i).GetROProperty("innertext")
Print text '打印所有WebElement的innertext
Next
如果需要和预期比较的, 再可以加个if判断 楼上应该可以满足你的要求。。。。。。。。。。。
自己 改改就可以了。 应该了解“webelement”的具体含义 回复 5# shingo0109 回复 5# shingo0109
谢谢,可以解决我的问题。非常感谢!
再追问一下,如果要对整个界面进行控件验证该怎么操作呢,目前只是针对“WebElement”这一种,当然如果事先对界面有哪些类型的控件知道的话没什么问题,但如果是不科知道界面到底有哪些类型的控件,或者说我要获取整个界面的控件该怎么写呀? 所有控件都可以理解为WebElement
只是有些控件 qtp可以识别.有些不能识别的就成为 WebElement 了 回复 9# dqf
要么把web的所有控件名放到一个数组里,把用for循环来一个一个识别, 验证点的话可以用if或select case来分开写:
desc("micclass").Value = "WebElement" '这个可以换成数组名 回复 11# shingo0109
试试 多谢了! 另外想多问一下,以上的方法可以获取到界面上所有的控制,但如果只是针对界面的某一部分,那又该如何去操作了呢
如图,现只有获取右面的“个人信息”部分的控件 本帖最后由 shingo0109 于 2011-6-20 09:20 编辑
回复 13# dqf
“界面的某一部分”是不是指LZ只想获取上述页面中的“个人信息”中的控件, 而不需要获取“教育经历”中的控件? 嗯 是的 回复 15# dqf
我看页面上"个人信息","教育经历"之类的右边有个“展开”,“收起”的链接,如果把不需要的点击“收起”让它在页面上不显示, 这样LZ试试看行不行? 还有左边的,上面的这些控件我将如何屏蔽掉呢? 回复 17# dqf
用spy看了下, 左边的和上边的控件貌似和个人信息那里的控件都在同一个Page下的,里面没有套frame,暂时想不到啥方法来区分开来,期待高手来解答了 wait... 5L完全正解
页:
[1]