51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] QTP描述性编程遇到的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-12-6 09:35:16 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本人刚学习QTP,用描述性编程写了一个关于在百度页面上识别link控件的程序,程序能顺利运行,但是结果是false,不知道问题出到什么地方啦,希望各位大侠能帮忙指点一下。谢谢
Set baidu = Browser("micClass:=Browser").Page("micClass:=Page")
print baidu.link("name:=新闻").Exist
Set baidu=Nothing
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

8#
发表于 2014-10-12 22:54:55 | 只看该作者
xjwldlover 发表于 2012-12-6 11:23
同样类型的问题一直在求助的第一页~
对象库、描述性编程强调的最重要的是对象的【唯一性】,通过描述可以 ...

我也遇到同样的问题了,按照你说的调试方法试了一下,Print baidu.childObjects(desc).count输出link的个数是2,但百度首页上就一个新闻link啊,而且我就开了一个浏览器,搞不懂什么原因了,所以请教一下
PS:QTP版本11.5,浏览器版本IE11,现在百度首页是新版的,不是旧版的了,但这应该不影响结果吧?
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    7#
    发表于 2012-12-7 10:43:42 | 只看该作者
    回复 5# xjwldlover


        纳尼?还有这事?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2012-12-7 10:30:08 | 只看该作者
    回复 4# 黑羽祭


        是的,经过你的指点,程序已经运行成功了,确实是空格的问题。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2012-12-7 10:08:09 | 只看该作者
    [img][/img]

    XP_SP3 IE8(8.0.6001.18702)  QTP11显示无空格

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    4#
    发表于 2012-12-7 09:47:53 | 只看该作者
    本帖最后由 黑羽祭 于 2012-12-7 09:51 编辑

    回复 1# xuewanju


        诶?
    这个问题昨天发过我邮箱吧。
    其实用SPY点下百度页面上的新闻链接,就会发现问题原因了。
    页面上并没有“新闻”,只有“新 闻”(中间有个空格)
    so:
    加个空格:
    print baidu.link("name:=新 闻").Exist
    就OK了。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2012-12-6 11:45:29 | 只看该作者
    回复 2# xjwldlover


        非常感谢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2012-12-6 11:23:24 | 只看该作者
    同样类型的问题一直在求助的第一页~
    对象库、描述性编程强调的最重要的是对象的【唯一性】,通过描述可以唯一找到对象。
    唯一的否定,是【不唯一】,包含 【多个】+【0个】,所以你要查找的对象有多个或零个。
    这时你将Link的属性写入到一个描述性对象(Description.Create)里,使用Print baidu.childObjects(desc).count 来判断link的个数。多个,则证明你的Link对象需要再添加属性,以确保其唯一性。
    0个,则说明你的LINK对象属性描述有错误。
    仔细一看,没错啊,那么你就需要查看baidu.exist 是否存在,print一下,发现这个对象不存在,再分析,如此循环反复,明白?

    你错误的原因就是同时存在多个浏览器
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-10 22:56 , Processed in 0.088615 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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