51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3188|回复: 7
打印 上一主题 下一主题

[讨论] 描述性编程中对象的属性如何获取?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-5-15 14:19:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这几天一直在进行描述性编程的实验,据说描述性编程可以使得QTP在Run-Time时获取描述所对应的对象,并运行对象固有的方法。

现在小弟有如下疑问:
1.描述性编程可以使得QTP获取不在对象库中的对象。

如果对象不在对象库中,那么我们如何去获取对象的属性,也就是Property

描述性编程的格式应该为

objectName("Property :=******").Property or method
如果对象不在对象库中,那么它的Property 我们该如何去获取?
用SPY?
我使用SPY去获取过浏览器对象的Property,在如下情况下,比如只打开1个浏览器窗口,观察浏览器对象在spy中显示的Property ,我发现SPY连浏览器对象的text属性都获取不到!

请大家指导一下,如何正确的获取不在对象库中对象的Property从而以便描述性编程时能够使用。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

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

    连续签到: 1 天

    [LV.2]测试排长

    2#
    发表于 2009-5-15 14:29:18 | 只看该作者
    1用spy直接获取

    2或者你录制完了脚本,结合对象库里对象的属性,再把所有脚本修改成描述性脚本
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.2]测试排长

    3#
    发表于 2009-5-15 14:31:40 | 只看该作者
    【我使用SPY去获取过浏览器对象的Property,在如下情况下,比如只打开1个浏览器窗口,观察浏览器对象在spy中显示的Property ,我发现SPY连浏览器对象的text属性都获取不到!】

    浏览器指的是Browser吧,Browser一般用title属性去描述
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
     楼主| 发表于 2009-5-15 14:35:46 | 只看该作者
    原帖由 fei.ge 于 2009-5-15 14:29 发表
    1用spy直接获取

    2或者你录制完了脚本,结合对象库里对象的属性,再把所有脚本修改成描述性脚本


    关于第1点,我认为SPY的获取正确性有待讨论,因为我举得那个例子里spy连基本的text属性值都获取不到。而我还是用录制的方法识别出对象后使用getROProperty(“text”)的值;

    关于第2点,使用描述性编程本来就是不想受到对象库的限制,比如有些对象是在录制脚本的时候没有获取到的,但是我们大概能够知道它的属性,于是才会去使用描述性编程去操作它。
    我的主要困惑就是,spy的功能似乎有局限,并不能获取到对象所有的可用属性。是不是这样呢?
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.2]测试排长

    5#
    发表于 2009-5-15 14:51:53 | 只看该作者
    【关于第1点,我认为SPY的获取正确性有待讨论,因为我举得那个例子里spy连基本的text属性值都获取不到。而我还是用录制的方法识别出对象后使用getROProperty(“text”)的值;】
    <<<你的目的就是想获取到text的值吗?通过描述性完全可以啊,只要你能让QTP先识别出你的对象

    【关于第2点,使用描述性编程本来就是不想受到对象库的限制,比如有些对象是在录制脚本的时候没有获取到的,但是我们大概能够知道它的属性,于是才会去使用描述性编程去操作它。】
    <<<描述性对象编程是不想受对象库的限制,你可以写完描述性脚本后删除对象库

    【我的主要困惑就是,spy的功能似乎有局限,并不能获取到对象所有的可用属性。是不是这样呢?】
    <<<这个.....,可能吧....
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2009-5-15 16:22:46 | 只看该作者
    很奇怪的是,我把browser对象加入对象库中之后,browser对象的text属性并没有被保存……
    然后我用描述性编程去通过text属性识别该对象时发现该对象不能被识别。因此是否可以得出这样的结论——对象库中并不能保存完全的对象属性,并且在使用描述性编程的时候,使用对象库中保存的属性值进行识别的话成功率会高一些?
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.2]测试排长

    7#
    发表于 2009-5-15 16:42:12 | 只看该作者
    能不能说一下的获取的是哪一个Browser,是你们公司的做的web项目吗?
    能把你的代码贴上来?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2009-5-20 14:06:46 | 只看该作者
    呵呵,我用对象库编程动态匹配解决这个问题了。稍微改了些代码就可以了,谢谢楼上的大哥啊。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-2 13:06 , Processed in 0.075244 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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