51Testing软件测试论坛

标题: sync和exist有什么不用 [打印本页]

作者: hett    时间: 2008-7-15 11:54
标题: sync和exist有什么不用
Browser("视易RDMIS系统").Page("视易RDMIS系统-登录_2").WebEdit("usr").Set "hett"
Browser("视易RDMIS系统").Page("视易RDMIS系统-登录_2").WebEdit("pwd").Set "4e141af"
Browser("视易RDMIS系统").Page("视易RDMIS系统-登录_2").WebButton("登录").Click

If Browser("视易RDMIS系统").Page("视易RDMIS系统_3").Sync Then   
        MsgBox"登陆成功"
else
        MsgBox "登陆失败"
End If

为什么不管等能否登陆
用.sync的都是弹出 登陆失败
用.exist 的都是弹出 登陆成功
???
作者: 小孩    时间: 2008-7-15 11:57
Sync 是同步点,意思就是等 页面全部下载完毕后执行
exist 这个可以用来判对对象是否存在
作者: zte_boy    时间: 2008-7-15 12:04
sync只用于page对象,指的是page对象同步加载
exist可以用于所有QTP的web对象,用于判断一个对象是否存在
作者: susieliu    时间: 2008-7-15 12:11
还是没有明白,如果要等到这个页面所有内容显示出来,该用什么方法?
想要精确的页面完全显示的时间?
我就知道下面三种方法,可是都取不到想要的时间点
waitperpoty(visible, true, 100000)--对页面最下面的元素用它
sync--对页面
exist -
作者: hett    时间: 2008-7-15 16:59
看了大家的提示后,
问题用一下的方案可以解决
Browser("视易RDMIS系统-登录").Page("视易RDMIS系统").Sync

If Browser("视易RDMIS系统-登录").Page("视易RDMIS系统").Frame("main").Exist Then     
        MsgBox"登陆成功"

换成用 Frame来判断
作者: zte_boy    时间: 2008-7-15 17:17
标题: 回复 4# 的帖子
waitperpoty(visible, true, 100000)--对页面最下面的元素用它
这个不是对最下面的对象用
这个是为了等待对象到达某个状态或转换到某个属性,然后进行下一步的操作
作者: susieliu    时间: 2008-7-15 17:32
那如果我要准确获得 页面显示结束的  时间点,该用什么方法呢
作者: susieliu    时间: 2008-7-15 17:41
waitperpoty(visible, true, 100000)--
可以获得做下面的对象出现的时间点,不也代表了页面完全显示的时间点?

可是执行的时候感觉qtp把每个对象都比较了一下看是不是 我要找的最下面的那个对象,结果多用了很多时间,所得的时间就不准确了
作者: zte_boy    时间: 2008-7-15 19:57
你的理解有错误,呵呵,waitperpoty(visible, true, 100000)-- 这个是针对某个特定对象来操作的
作者: zte_boy    时间: 2008-7-15 20:00
如果你要获取真实的页面加载时间,要借助DOM模型
创建一个IE实例,通过它访问document对象,利用readystate属性获取网页加载时各个阶段的时间
比较麻烦




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