51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 13014|回复: 43
打印 上一主题 下一主题

[原创] web页面包含iframe的问题---感谢大家的关心,此贴已由超级版主pcl2004_27给出解决方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-6-27 09:28:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的web页最下面一块是引入iframe的版权页面.导致我动态读取不到iframe外的其它链接。
我的动态读取语句如下:
set oDesc = Description.Create()
oDesc("Class Name").value="Link"
set objColl = Browser("供应商").Page("供应商").ChildObjects(oDesc)
NumberOfLists =ObjectColl.Count()
-----页面上本来有十几个link的,但因为页面下面有iframe的原因,跟踪以上语句发现读取的是iframe里的link,始终读取不到iframe外的link , 请问如何解决?

[ 本帖最后由 deso 于 2006-7-3 08:54 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-6-27 10:29:23 | 只看该作者
不太明白你说的
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-6-27 10:33:02 | 只看该作者
原帖由 xiaonan 于 2006-6-27 10:29 发表
不太明白你说的

---------------------------------------

  我是要取页面中link集合,然后分析link, 取到正确的link , 但发现取到的集合始终是iframe里的link集合. 这样的话,我就漏取和漏分析iframe外这个页面的link了, 自然也就得不到我要的结果了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-6-27 10:37:45 | 只看该作者
iframe这个能够先去掉一下哇啦?跟你开发去商量一下,先弄个测试版,测完再放上去.
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2006-6-27 10:47:02 | 只看该作者
原帖由 xiaonan 于 2006-6-27 10:37 发表
iframe这个能够先去掉一下哇啦?跟你开发去商量一下,先弄个测试版,测完再放上去.


啊? 这样没解决问题啊! 系统是已经完成了的,难道要再去改系统
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-6-27 15:09:13 | 只看该作者
是不是参考了手册中如下的代码?
  1. Sub ChildObjects_Example()
  2. 'The following example uses the ChildObjects method to find all the
  3. 'list objects on a Web page, and then to select an item in each list.

  4. Set oDesc = Description.Create()
  5. oDesc("micclass").Value = "WebList"
  6. Set Lists = Browser("Mercury Interactive").Page("Mercury Interactive").ChildObjects(oDesc)
  7. NumberOfLists = Lists.Count()
  8. For i = 0 To NumberOfLists - 1
  9. Lists(i).Select i + 1
  10. Next


  11. End Sub
复制代码


这个例子,我去年的时候好像发贴说过,MI给的这个例子很不好理解。
除了这个以外,还有几个写的不对,或不清楚的。就不一一列举了。

[ 本帖最后由 lovetest6 于 2006-6-27 15:45 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2006-6-27 15:37:02 | 只看该作者
原帖由 lovetest6 于 2006-6-27 15:09 发表
是不是参考了手册中如下的代码?
Sub ChildObjects_Example()
'The following example uses the ChildObjects method to find all the
'list objects on a Web page, and then to select an item in each list ...



是的, 但是不能解决页面中有iframe的问题,知道怎么解决页面包含iframe但要取到iframe外的ChileOjbects吗?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2006-6-27 15:44:03 | 只看该作者
原帖由 deso 于 2006-6-27 09:28 发表
我的web页最下面一块是引入iframe的版权页面.导致我动态读取不到iframe外的其它链接。
我的动态读取语句如下:
set oDesc = Description.Create()
oDesc("Class Name").value="Link"
set ...


加上底下这句看看。
msgbox objcoll(0).GetROProperty("name")

你得到的是iframe的集合吧??
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2006-6-27 15:51:14 | 只看该作者
原帖由 lovetest6 于 2006-6-27 15:44 发表


加上底下这句看看。
msgbox objcoll(0).GetROProperty("name")

你得到的是iframe的集合吧??


是的, 就是因为得到的只是iframe的集合,所以烦, 怎么得到不是iframe里的集合呢?
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2006-6-27 16:00:28 | 只看该作者
原帖由 lovetest6 于 2006-6-27 15:44 发表


加上底下这句看看。
msgbox objcoll(0).GetROProperty("name")

你得到的是iframe的集合吧??


msgbox objcoll(0).GetROProperty("name")
得到的是iframe的name
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2006-6-27 17:00:04 | 只看该作者
首先至少用
oDesc("html tag").value="A"比较好吧。
oDesc("Class Name").value="Link"似乎没找到。
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2006-6-27 17:04:02 | 只看该作者
是不是应该在tool-option-web里面设置些什么?

评分

参与人数 1综合技术指数 +6 收起 理由
deso + 6

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2006-6-28 08:55:39 | 只看该作者
原帖由 lovetest6 于 2006-6-27 17:00 发表
首先至少用
oDesc("html tag").value="A"比较好吧。
oDesc("Class Name").value="Link"似乎没找到。


如果你的iframe里也有link的话, 那么找到的就是iframe里的link, iframe外的如何找呢? 另外,oDesc("html tag").value="A"和oDesc("Class Name").value="Link"的描述应该是一样的
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2006-6-28 09:01:57 | 只看该作者
呵呵关注一下
回复 支持 反对

使用道具 举报

该用户从未签到

15#
 楼主| 发表于 2006-6-28 15:00:32 | 只看该作者
原帖由 songfun 于 2006-6-28 09:01 发表
呵呵关注一下


怎么没人帮忙解决一下啊sdlkfj7  郁闷很久了。。。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    16#
    发表于 2006-6-28 21:49:06 | 只看该作者

    试试下面的的方法

    楼主,请把     oDesc("Class Name").value="Link"   改为 oDesc("Class Name").innertext ="Link"  试试看看。
    不管问题是否得到解决,请把运行的结果发布上来。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2006-6-29 08:48:57 | 只看该作者
    原帖由 walker1020 于 2006-6-28 21:49 发表
    楼主,请把     oDesc("Class Name").value="Link"   改为 oDesc("Class Name").innertext ="Link"  试试看看。
    不管问题是否得到解决,请把运行的结果发布上来。


    首先,谢谢这位仁兄的支持~~~

    描述性语句里 没有oDesc("Class Name").innertext ="Link" 这种语法吧? 运行的结果自然也就是"  对象不支持引属性或方法 oDesc('...').innertext    "
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    18#
    发表于 2006-6-29 09:50:50 | 只看该作者

    试试下面的的方法(续)

    不好意思,自己对QTP还是不熟悉。 你用  oDesc("innertext ").value="Link" 试试看。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2006-6-29 11:06:50 | 只看该作者
    原帖由 walker1020 于 2006-6-29 09:50 发表
    不好意思,自己对QTP还是不熟悉。 你用  oDesc("innertext ").value="Link" 试试看。


    多谢仁兄。。

    link是class 的属性名, innertext是包含的文字吧? 怎么可能oDesc("innertext ").value="Link",自然也执行不出什么结果了...
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2015-4-23 14:35
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    20#
    发表于 2006-6-29 12:01:39 | 只看该作者
    实际操作中是否会激活 iframe外的link 呢,楼主是要测试什么功能,能说尽量说得明白些
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 11:48 , Processed in 0.096296 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表