51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5110|回复: 23
打印 上一主题 下一主题

[原创] 【暂时解决】运行脚本过程中,识别对象出现的间歇性问题,实在没辙了

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-4-1 21:54:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题描述如下:
我编写了个一个业务的QTP脚本,在回放的时候,部分情况可以整个业务全部跑完,对象能够全部识别
但是也经常出现下面的情况,跑着跑着就挂住了,出现找不到对象的情况。而且我暂停后,SPY的时候,只剩下了Browser(...).Page(...),入下图所示:

而正常的情况应该是page下面的对象都能识别出来的,比如下面的WebEdit对象


一般来讲,把ie关掉后重新打开,可以重新识别,但是跑了一会就出现了开始的问题。
描述性编程和对象库的方式都采用过了,都是一样的问题,中间是有比较长的wait等待时间的
最初通过删除ie缓存、childObjects函数,对象的hightLight方式,DOM的方式都没有彻底解决该问题
实在没辙了,请问各位大侠是否出现过类似的问题?麻烦指点下。

顺便补充下,我的是QTP9.2,同事的9.5和10.0版本都是一样的问题,出现问题的界面,大部分都调用过ajax动态生成的DIV对象,不知道是不是跟这个有关系

[ 本帖最后由 liuhuascanf 于 2010-4-15 09:10 编辑 ]

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-4-1 23:58:44 | 只看该作者
我也出现了这个问题,也想知道怎样解决。昨晚求助了,但还没人说具体怎么做!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2010-4-2 10:04:16 | 只看该作者
有人能解决吗?
或者给点提示啥的都行,这个问题困扰了我们好几个同事一段时间了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2010-4-2 10:13:11 | 只看该作者
不清楚,也碰到过。不过是在调试中DEBUG里查看对象的时候报错崩溃掉的,然后只能重启QTP了
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2010-4-2 14:05:29 | 只看该作者
是不是没加属性进去?

[ 本帖最后由 xxq520 于 2010-4-2 14:09 编辑 ]

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2010-4-2 14:05:48 | 只看该作者
刚一个高手帮我解决了不能识别对象的问题!

[ 本帖最后由 xxq520 于 2010-4-2 14:10 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2010-4-2 14:23:33 | 只看该作者
请问xxq520楼上,是哪个对象的属性?
通过对象库是直接add进去的,而且我那个问题是间歇性的,有时候行,有时候不行。
麻烦520兄弟详细说明下呢,或者说说你的问题怎么解决的呢?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2010-4-2 16:30:28 | 只看该作者
用IE7.0试试
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2010-4-2 16:51:10 | 只看该作者
其实我也碰到过。。。貌似无解。。不过我好像用描述性编程可以识别下面的对象。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2010-4-2 17:13:29 | 只看该作者
我觉得技术性的问题肯定有解,如果实在不行那也有可能是QTP的BUG了,但是我觉得可能有办法解决
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2010-4-2 17:14:14 | 只看该作者
我用描述性的和对象库的方式都尝试过
都有这种问题
唉,纠结的蛋疼
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2010-4-2 17:19:10 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2010-4-12 14:06:14 | 只看该作者
非常感谢楼上,我从HP的官方网站上下载了个补丁 QTP_00626.EXE,大部分的问题都已经解决了。
    但是还有一个最后的问题,实在太怪异了。我业务执行完毕,最后点确定的时候,连续弹出几个js的对话框,前面几个都能找到对象,而且能识别并且处理。
    但到最后一部的js对话框,就死活执行不下去了,SPY时候又是变成了找不到对象的情况,只能识别到Page一级,就跟上面的截图差不多。而我业务的状态就一直保持着下面图的样子。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2010-4-12 14:14:51 | 只看该作者
继续描述性看看咯。
回复 支持 反对

使用道具 举报

该用户从未签到

15#
 楼主| 发表于 2010-4-12 15:02:53 | 只看该作者
唉,描述性和对象库的方式都一样的问题,只能识别到Page页
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2010-4-12 19:04:22 | 只看该作者
如果焦点在那个js对话框上面的话,就直接送一个回车得了
Set WshShell = CreateObject("wscript.shell")
WshShell.SendKeys "{ENTER}"
Set WshShell = Nothing
回复 支持 反对

使用道具 举报

该用户从未签到

17#
 楼主| 发表于 2010-4-15 09:00:26 | 只看该作者
非常感谢楼上的兄弟,采用楼上的方法,这个BUG临时解决掉了
抽时间给HP的人沟通沟通,QTP的 补丁没有彻底解决问题。
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2010-4-15 09:35:35 | 只看该作者

回复 18# 的帖子

你的QTP是付费的还是D版的?你们的产品是纯web?
感觉如何条件允许,可以尝试下selenium,我最近在做selenium的测试,在对象定位上的确有独到之处。QTP大而全,商业软件覆盖的应用场景太多了,目前它的Locating Elements貌似是基于DOM的,添加了自己的封装。
而Selenium在对象定位上,除了DOM,还支持XPATH,Re,CSS,如果比较关注爬虫,可以看下,当前的页面解析比较主流的技术包括:正则表达式,XPAHT和DOM,也就是说Selenium的页面对象定位支持全部的三种方式,而且还支持CSS,提供了多种的对象定位方式。

对于你这里经常出现问题的Ajax,Selenium提供了waitFor用来专门处理,非常方便,当然前提是你知道在哪里应用率饿Ajax。

对于后面的js,是不是iframe?如果是iFrame貌似IE本身支持的就不好,至少在前阵子我通过IE DOM获取iFrame中的content就获取不到,在W3C中查资料,里面显示IE6的DOM中对iFrame支持的不好。
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2010-5-5 10:01:55 | 只看该作者

回复 19# 的帖子

我最近也在看Selenium,唉,悲剧啊,有空请教下,谢谢
回复 支持 反对

使用道具 举报

该用户从未签到

20#
发表于 2010-5-5 15:17:23 | 只看该作者
很菜的问一下
17# 加个回车有什么用处呢?
我现在也遇到同样的问题,有时能识别到webedit,有时就只能识别到page,郁闷。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-20 07:52 , Processed in 0.112653 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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