关于getElementsByTagname
本帖最后由 wangkb01 于 2012-12-28 10:36 编辑邮箱中QTP无法识别邮件列表控件。想使用DOM方法,点击复选框。
但由于没有id和name,只能使用tagname,试了多次,都没成功,请问大家该如何使用这个方法。
下图是复选框属性的图。
什么邮箱?
信息不全啊~ 回复 2# 黑羽祭
163的邮箱的复选框
回复 2# 黑羽祭
163的邮箱,邮件列表的复选框
回复 4# wangkb01
我看了一下:
添加个多选框到对象库,然后直接:
Browser("(1封未读) 网易邮箱5.0版Beta").Page("(1封未读) 网易邮箱5.0版Beta").WebElement("WebElement").Click
居然也可以勾选。 回复 4# wangkb01
再试试这个:Set oDesc = Description.Create()
oDesc("micclass").Value = "WebElement"
oDesc("html tag").Value = "B"
oDesc("class").Value = "nui-ico nui-ico-checkbox"
Set obj = Browser("网易邮箱5.0版Beta").Page("网易邮箱5.0版Beta").ChildObjects(oDesc)
Num = obj.Count()
msgbox "有" & Num & "个WebElement对象"
For i = 1 To Num - 1
obj(i).Click
Next <SPAN class=nui-chk-symbol><B id=1356668146684_329xtbBSQGTrE9othw3XAAAsRCheckboxB class="nui-ico nui-ico-checkbox nui-ico-checkbox-checked" title=取消选中></B></SPAN>
QTP进行web测试,HTML知识是关键~,通过抓取页面元素可以发现,使用childObjects更方便。
根据SPAN class=nui-chk-symbol遍历checkbox,根据class="nui-ico nui-ico-checkbox nui-ico-checkbox-checked"判定选中状态 回复 5# 黑羽祭
谢谢。。我以为webelement不能直接点击呢。。 回复 7# xjwldlover
我试过getElementById的方式,但是没成功,我试了这两种方式
xx.getElementById(1356668146684_329xtbBSQGTrE9othw3XAAAsRCheckboxB ).value=true
xx.getElementById(1356668146684_329xtbBSQGTrE9othw3XAAAsRCheckboxB ).checked = true 回复 9# wangkb01
呵呵 你操作错了,给LZ推荐三个工具,帮助你快速理解对象和QTP工作方式:
作用:查看对象方法和属性,用于跟踪和调试(比如你这里获取的对象是没有checked属性是不可用的)
IE8的pdm.dll,安装QTP后注册一下IE的这个控件,和iexplore.exe相同目录(IE8及以上)
作用:抓取页面元素和调试页面脚本,比如我抓取的HTML信息
IE的F12功能 (IE8及以上)
作用:了解QTP对象,查看QTP提供的各项功能、对象、方法。比如webElement可以点击,这在文档里就有说明
QTP的F1帮助文档 回复 10# xjwldlover
好的,谢谢,非常感谢这么耐心的解答 回复 6# 黑羽祭
恩,很好用,很感谢
页:
[1]