51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3469|回复: 12
打印 上一主题 下一主题

[原创] 把对象库文件和脚本拷贝到另一台机器上就不识别了

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-6-19 17:43:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教各位,虽然问题好像比较简单,但是我真的很困惑:
把一台机器已经更新好的脚本对象库文件default.tsr,包括虚拟对象库文件..\Votemplate\VoCollection0.vot,全都拷贝到另外一台机器上QTP的相应目录下,并且保持QTP的设置与第一台机器一样,但是运行时,提示找不到对象.
用的是共享对象库,我还把智能对象识别给disable了.
这是咋回事啊?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2007-6-19 17:49:21 | 只看该作者
    建议你把原来的文件 ZIP以后再放到另外一台机器上。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2007-6-20 08:57:06 | 只看该作者
    原帖由 walker1020 于 2007-6-19 17:49 发表
    建议你把原来的文件 ZIP以后再放到另外一台机器上。


    "原来的文件"指的是脚本,对象库文件default.tsr和虚拟对象库文件..\Votemplate\VoCollection0.vot这些在原来的机器上压缩后,再拷贝?
    为什么这样做呢,不管怎样,先试试
    谢谢斑竹啊
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2007-6-20 09:07:59 | 只看该作者
    先在第一台安装了QTP的机器上把 脚本打开,然后点击 File -->Export Test to ZIP File... 以把文件打包;然后把打包后的ZIP文件拷到第二台机器上试试。注意:脚本在第二台电脑上的位置要和它在第一台电脑上的位置一样。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2007-6-20 09:09:28 | 只看该作者
    哦sdlkfj8 ,这样啊,谢谢啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2007-6-20 09:37:45 | 只看该作者
    好像还是不行啊,尽管这样做了
    原来对象库中的对象还是都不能识别啊,如果重新识别,库中只是增加了一遍"对象_2"类似这样的.
    晕啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2007-6-20 10:08:18 | 只看该作者
    还有一个地方可疑,你可以检查一下。如果你要保证Copy到另外一台机器正常运行,最好保证两台运行脚本的操作系统和浏览器版本也一致。
    我们项目曾经遇到过QTP移植问题,不同操作系统版本或者浏览器版本对象识别会有问题。比如Windows2000下面的Dialog和WindowXP下面的Dialog稍有不同,在一个系统下识别的对象在另外一个系统下面可能找不到。因为我们项目仅限一种测试环境,最后是统一了测试环境才避开了这个问题。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2007-6-20 10:28:47 | 只看该作者
    哦,是这样啊.
    2台测试机器分别是2000server和2003,我想可能是因为操作系统浏览器版本的问题吧?
    另外,显示器不会有什么影响吧?比如说一个17"的,一个15"的,保证分辨率,刷新率,颜色设置一样就可以了吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-6-20 10:46:59 | 只看该作者
    嗯,有可能是这个原因,Windows2000Server和2003属于两个不同的产品系列。最好比较一下在你用到的两个环境下,相同的对象到底是不是被识别成了不同的对象。

    至于显示分辨率是否需要保持一致,个人体会是具体情况具体分析:
    如果测试对象都是Web应用程序,只要浏览器窗口在显示范围内,页面内的元素一般不受显示分辨率限制;
    如果是Windows应用程序,换了分辨率后应用程序窗口可能会跑到显示范围外。这可能会造成对象不可见的错误;
    不过显示问题造成的错误应该是Object Invisible,和你现在遇到的Object Not Identified是不同的。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2007-6-20 17:38:11 | 只看该作者

    回复 #9 winfood 的帖子

    谢谢,
    我测试的主要是windows应用程序,发现在2个不同的显示器下,同一对象识别的名称不同,所以拷贝过去的对象库没法用了.再看了看,估计对象的名称是有一定随机性的,唉,没办法了.
    另外,sdlkfj8 能通过updaterun来重新识别吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2007-6-20 22:48:47 | 只看该作者
    你遇到的问题应该就是测试对象在不同的操作系统下面显示的名称不同,我遇到过类似问题。我没有用过Update Run。
    不过你可以尝试改变对象识别的条件来是对象通用,比如:去掉识别对象的名字,以其他的信息识别对象。

    还有就是,如果你的确要在不同操作系统上面测试。那么应该从设计的策略上考虑一下了,是不是有必要由针对性的建立不同的对象库,在一个系统上用其中一套,而在另外一个系统上面用另外一套。仅供参考。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2007-6-21 08:58:09 | 只看该作者
    看起来最好还是同一个操作系统,不同操作系统还得重新考虑下了.sdlkfj3
    总之,谢谢帮助了我的人
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2007-6-21 16:03:06 | 只看该作者
    最好两台机器的显示器也是相同的,纯平显示器和液晶显示器即使是采用的相同分辨率也会出现不能识别的现象
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-9-25 07:22 , Processed in 0.091498 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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