QTP10 执行脚本龟速
刚刚遇到一超级郁闷的问题,一个点击10多步的case居然跑了45分钟,我的QTP配置肯定不会错的: 关闭了智能识别,run mode 也设置为fast了,超时时间也是20秒,页面跳转超时60秒.单是就是这么慢.结果如下:
Test: DSR_60R1_PR372188
Results name: Res5
Time Zone: Pacific Standard Time
Run started: 3/26/2010 - 6:55:05
Run ended: 3/26/2010 - 7:40:59
出问题的是在这一步:
Browser("Report Manager").Page("Report Manager_3").Image("ctl160$ctl01$ctl07$ctl00$ctl00").FireEvent "onmouseover"
Browser("Report Manager").Page("Report Manager_3").Image("ctl160$ctl01$ctl07$ctl00$ctl00").Click
这个图片可以找到,就是点击的时候慢的要死,单是一步点击就花掉了将近20分钟,其他的操作都很快,我想取出这个图片的位置,然后点那个位置,结果取图片位置的操作也是非常非常慢,对了,这图片是打印,谁有好的办法,让时间降下来啊?或者谁遇到过,麻烦给支个招嘛,谢谢咯. 1、检查一下那个Image对象的识别属性,是否有变化的属性导致识别的时候时间过长。
2、可以考虑注释掉onmouseover这行,如必须保留请忽视本条。 原帖由 shotstar 于 2010-3-26 15:20 发表 http://bbs.51testing.com/images/common/back.gif
1、检查一下那个Image对象的识别属性,是否有变化的属性导致识别的时候时间过长。
2、可以考虑注释掉onmouseover这行,如必须保留请忽视本条。
谢谢你了,如果真的这么简单,我也不会发帖问了,识别一点问题都没有,我打开对象库,highlight马上就可以识别到,onmouseover可要可不要,不过我一般喜欢加上FireEvent,就是点击非常之慢,就像死机一样,单是cpu和内存都用的不高. 我还是建议你先试试看去掉FireEvent那行,因为FireEvent在某些对象上应用的不是太好,所以我建议先去掉看看。
另外可以试着将那个Image对象的智能识别改成false。 脚本原来是没有FireEvent的,执行一样非常慢,我就想试试加个FireEvent会不会快点,结果不快~~Image的智能识别我也早就去掉了,就是不行 我拿它当灵异事件了,单是我很好奇,4#,你的头像是男还是女?:lol 看来我也没有太好的办法了。
我一般解决这种问题的思路就是先看有没有warning的,尽量的消除warning。然后找到问题语句后,从顶层Browser一直确认到最底层的对象,挨个寻找问题原因。
也许问题就在这个Image的Click方法上。额,有一个比较麻烦的办法,你可以尝试一下,就是这里的点击不用Image().Click,用我给你的方法试试看。如果你能获取Image的绝对坐标(当然要能在屏幕上看到),然后用下面的语句,X要用对象的abs_x,可以适当把x和y都加一点,以便鼠标点击到图片中间而不是顶点。
Extern.Declare micLong, "SetCursorPos", "user32.dll", "SetCursorPos", micLong, micLong
Extern.SetCursorPos X,Y '鼠标移动到坐标(X,Y)
Extern.Declare micVoid, "mouse_event", "user32.dll", "mouse_event", micLong, micLong, micLong, micLong, micLong
Extern.mouse_event 2,X,Y,0,0 '鼠标按下
Extern.mouse_event 4,X,Y,0,0 '鼠标抬起
如果这个办法也解决不了,俺也束手无策了。呵呵。
回复 6# 的帖子
当然是男的了,叫裴勇俊。 我也尝试过7#的方法,可是,获取abs_x和abs_y的时候,也是龟速,所以...灵异事件回复 8# 的帖子
难道是韩国人? 你识别图片的属性用的是那个啊?? 那看来还是在Image的识别上存在问题,确实有那种在对象库里highlight可以识别到对象,但是执行起来就要很久才找到的情况。那个页面的图片很多么?要么考虑用Description对象加childobjects的方法获取page下的Image,然后再click试试。也可以直接加上你这个Image的属性直接用描述性编程试试。
PS:头像那个人是韩国的。 都试过,唉....我被杯具撞了一下腰~~
图片的识别用了 "image type", "html tag", "alt" 和 "index", 这个是我第一次遇到.别的图片click都很正常..我已经要放弃了~ 这些属性都不要用..只用file name属性识别一定可以,用描述性编程 顶楼上。LZ用的属性貌似太多了。。。我也是常用file name来识别。 楼主可以试试Link对象,点击image实际上是点击链接
页:
[1]