51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: 假装不在
打印 上一主题 下一主题

[原创] 【QTP编码小知识 五 “山寨”WebElement】

[复制链接]

该用户从未签到

21#
 楼主| 发表于 2009-2-20 19:19:03 | 只看该作者

回复 19# 的帖子

::yiwusuoyou::: 恭喜了~~
回复 支持 反对

使用道具 举报

该用户从未签到

22#
发表于 2009-2-23 11:17:17 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

23#
发表于 2009-2-23 11:42:06 | 只看该作者
学习了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    难过
    2015-9-21 13:50
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    24#
    发表于 2009-2-27 14:01:56 | 只看该作者
    写的非常好,非常实用,呵呵。

    顶楼主。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    25#
    发表于 2009-2-27 15:07:13 | 只看该作者

    大家都很厉害!

    大家都很厉害!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    26#
     楼主| 发表于 2009-2-28 12:15:37 | 只看该作者
    ::yiwusuoyou:::

    大家写完后,可以试试看发出去,并且自己收件。看看结果如何?
    write方法,或者是insertAdjacentText   效果有什么区别。

    其实方法中还有另外一两个,大家可以想想如何做。并且看看效果。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27#
    发表于 2009-3-2 15:38:10 | 只看该作者
    先收了,等有时间再试试
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    28#
     楼主| 发表于 2009-3-6 15:36:29 | 只看该作者
    原帖由 fei.ge 于 2009-2-27 14:01 发表
    写的非常好,非常实用,呵呵。

    顶楼主。


    ::yiwusuoyou:::   谢谢。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    29#
    发表于 2009-3-6 18:14:58 | 只看该作者
    写的很好,主要是给大家提供了另一个操作对象的思路,用DOM对象操作起来可以方便的实现很多WEB上的公共方法
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    30#
    发表于 2009-3-12 23:50:18 | 只看该作者
    c'est utile
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    31#
     楼主| 发表于 2009-4-15 10:20:59 | 只看该作者
    没事顶起来给大家瞧瞧。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    32#
    发表于 2009-4-15 10:25:28 | 只看该作者

    难道QTP封装的方法不是DOM操作?

    这里谁能给个解释,QTP并未封装DOM吗?

    [ 本帖最后由 shanxi 于 2009-4-15 10:28 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    33#
     楼主| 发表于 2009-4-15 22:38:24 | 只看该作者
    有。
    你可以获取它并对它做操作。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    34#
    发表于 2009-4-16 10:06:39 | 只看该作者
    假兄,我最近遇到了个问题

    公司的项目是用JAVA开发的,BS的,在Iframe下有时候用childobjects()方法获取不到webelement对象,这些webelement其实都是一个webtable中的一些数据,比如

    set rowId=description.create()
           rowId("html tag").value="DIV"
           rowId("innertext").value="1"                  '加不加这行都等于0
    set rowIdcollection=MainPage.Frame("name:=mainIframe").childobjects(rowId)   
    rowIdcollection.count                  '得到的总是0


    msgbox MainPage.Frame("name:=mainIframe").WebElement("html tag:=DIV","innertext:=1").exist   '这个是存在的

    看过你的另外一篇文章(忘了名了 ),我也尝试用object.getelementsbytagname("DIV"),得到的数据又非常庞大,很多不是我想要的,这些webelement只有一个html tag属性为div,因为QTP没办法把这些webelement识别成webtable里面的数据,因此我才需要大费周章地人工来处理这些数据,对于这个有没有什么好的方法或者建议。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    35#
    发表于 2009-4-16 10:20:52 | 只看该作者

    回复 33# 的帖子

    我可以理解为你认同QTP封装的那些方法全是通过操控DOM而获取的吗?

    而上面所说的扩展仅是因为QTP未封装?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    36#
    发表于 2009-4-16 12:09:08 | 只看该作者

    回复 34# 的帖子

    可以通过下面方法取数据
    'Table编号
    For i =1 To 14
    '取第几列
            For j=4 To 5
                    text = MainPage.Frame("name:=mainIframe").WebTable("text:=^"&i&"{1}\s.*").GetCellData(1,j)
                    print text
            Next
    Next
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    37#
    发表于 2009-4-16 15:04:43 | 只看该作者
    我以前测试的也有文本域的操作,我用innertest就OK了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    38#
     楼主| 发表于 2009-4-16 17:03:36 | 只看该作者
    原帖由 blueeagle9999 于 2009-4-16 10:06 发表
    假兄,我最近遇到了个问题

    公司的项目是用JAVA开发的,BS的,在Iframe下有时候用childobjects()方法获取不到webelement对象,这些webelement其实都是一个webtable中的一些数据,比如

    set rowId=description. ...



    http://www.51testing.com/?uid-17 ... wspace-itemid-95404
    是这个文章对吧。

    你看看后台代码中,这个TABLE自己有ID不,如果有ID就直接getelementbyid就可以了,或者也可以通过getelementsbyname  它的名字。

    msgbox MainPage.Frame("name:=mainIframe").WebElement("html tag:=DIV","innertext:=1").exist   '这个是存在的
    你这个方法有点不准吧,我估计。因为你使用innertext的话,它有可能会帮你匹配正值表达式哦,所以....

    另外有个建议,如果你这个控件经常会出现,建议考虑使用插件开发。你可以使用的basicclass 设置成table估计效果会很不错。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    39#
     楼主| 发表于 2009-4-16 17:05:44 | 只看该作者
    原帖由 cherubim 于 2009-4-16 15:04 发表
    我以前测试的也有文本域的操作,我用innertest就OK了


    有些情况使用时不行的,像这个163的控件就不行。具体什么原因需要研究。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    40#
    发表于 2009-4-16 22:13:28 | 只看该作者

    回复 38# 的帖子

    忙到现在~
    你的建议我先收下了,有空仔细研究下,有问题再讨教
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-9-20 15:43 , Processed in 0.079015 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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