51Testing软件测试论坛

标题: 想请教下怎么使用qtp在html中插入一行吗 [打印本页]

作者: test-fuji    时间: 2013-7-10 11:07
标题: 想请教下怎么使用qtp在html中插入一行吗
在下使用的是qtp11.5,IE10,情况如下

操作前查看html如下:
<span class="combo" style="width: 198px;">
     <span>
          <span class="combo-arrow"/>

操作后在最下面会多出一行
<span class="combo" style="width: 198px;">
     <span>
          <span class="combo-arrow"/>
     <input name="XXXX" class="combo-value" type="hidden" value="YYYYY"/>


我只知道怎么修改节点中某个属性的值,但不知道怎么插入新节点

然后我看到qtp里有许多如图的方法[attach]86255[/attach],大概能看出什么意思,但弄了半天也不知道怎么用,帮助文件里也找不到好像
最后就是想请教下,能通过qtp实现插入红色字体那一行吗?不知道有没有描述清楚问题,请大家帮忙看下,在此小弟先感谢了
作者: wuxue107    时间: 2013-7-10 12:23

  1. 对dom节点操作。先要获取该节点。是QTP上的话,可以定义一个.WEBElement("class:=combo-arrow","tagname:=span")之类的唯一确定你要操作的节点然后SetROProperty("innerHTML","<input name=""XXXX"" class=""combo-value"" type=""hidden"" value=""YYYYY""/>
  2. ")
复制代码

作者: test-fuji    时间: 2013-7-10 13:32
回复 2# wuxue107

非常感谢,我现在就去试一把
作者: test-fuji    时间: 2013-7-11 10:30
我尝试了如下这样写,y(5)就是要我想要的对象,但执行到最后一行时,QTP报对象不支持此属性或方法:SetROProperty,为什么支持GetROProperty却不支持SetROProperty,希望知道的人解答一下,谢谢各位了

Dim x,y,z
Set x = Description.Create()
x("html tag").value = "SPAN"
x("micClass").value = "WebElement"
x("height").value = "22"
Set y =  Browser("创建报表").Page("创建报表").ChildObjects(x)
z = y(5).GetROProperty("innerhtml")

y(5).SetROProperty "innerhtml",z & "<input name=""FillStaffs"" class=""combo-value"" type=""hidden"" value=""huow"">"
作者: test-fuji    时间: 2013-7-11 11:27
解决了,把报错的那一行改成下面的写法就行了
y(5).Object.innerHTML= z & "<input name=""FillStaffs"" class=""combo-value"" type=""hidden"" value=""huow""/>"
非常感谢2楼的回复,给我提供了解决问题的方向




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2