51Testing软件测试论坛

标题: 大家run script的时候,觉得速度上...... [打印本页]

作者: bluelight    时间: 2006-5-10 16:24
标题: 大家run script的时候,觉得速度上......
除了和程度逻辑上的时间复杂度相关,运行速度上还有没有其他方面的LAG呢?这些LAG时间跟什么有关系呢?
比如:
我分析自己程序的test result 发现的现象:
判断

  1. dim myDes
  2. set myDes = description.create()
  3. myDes("....").value = "....."
  4. '对于这样一个myDes
  5. '在判断
  6. if Browser("...").page("....").image(myDes).exist
  7. .......
复制代码

当对象确实存在的时候,判断时间(精确到second)是0
但是如果对象不存在,该前后判断有20秒时间的lag

这是为什么呢?
这段时间qtp在进行什么操作?
或者说,它是怎么check 是否存在的,才会导致这样的结果。。。。。。。
作者: Horus_Ra    时间: 2006-5-10 16:54
对象不存在时,QTP会等待对象的出现,这个时间可以在Test -> Settings ->Run里面自己设置……

exist可以自己设定超时的时间,比如exist(10)
作者: bluelight    时间: 2006-5-10 17:18
o!
赞!
我真傻,真的,光知道有这个东东,却没有想到是因为这个!

那么达人再回答下,general的问题吧。。。。。。
time lag 包括哪几个部分
作者: Horus_Ra    时间: 2006-5-10 17:40
你想加快运行速度吗?

你可以删掉不用的插件,或者可以增加对象的唯一属性来加快QTP对对象的识别时间~运行的时候,乱七八糟的窗口不要开太多……

脚本也可以优化,比如对象循环次数多的话,可以用With,等等……

其实,不出问题的话,QTP运行的速度还是不错的……
作者: bluelight    时间: 2006-5-10 17:48
想了解加快速度的方法:))
谢谢

ps:你说的 增加对象 唯一属性 是什么意思呢?
就是说,识别对象的属性?选取中间一个就行?还是自定义唯一属性呢?//弱弱的问,是界面outertext代码上存在属性就可以拿来识别对象吗?
作者: Horus_Ra    时间: 2006-5-10 17:54
比如说,窗口上有N个按钮,按照Text属性来点的话,可能会有些慢,因为这些按钮都有Text属性……那么你可以添加一些其它有助于识别的属性,比如Index(随便举个例子……),或者x,y(位置)……

其实一般用不着这样,QTP查找属性的速度还是不错的,除非你界面上有很多很多对象……~
作者: bluelight    时间: 2006-5-11 09:47
嗯,谢谢
作者: tomzhang    时间: 2006-5-25 15:56
速度慢!我觉得主要是对象的识别问题!QTP中对象是按照object repository,然后是smart identification,最后是Ordinal identifier来确认对象的,所以QTP要花大量的查找对象的时间!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2