51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4109|回复: 14
打印 上一主题 下一主题

[求助] if not .... then ....end if问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-29 11:16:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
wait(1)
If not  Browser("首页").Page("网易").Exist Then

systemutil.Run"C:\Program Files\Internet Explorer\IEXPLORE.EXE"
       
Browser("首页").Page("Page").Sync
Browser("首页").Navigate "http://mail.163.com"
Browser("首页").Page("首页").Sync
.
.
.
登陆.....
end if

我把这几句代码放在了脚本的前面。
1.一开始没加wait(1),报end if 错误。加了个wait(1)问题就解决了,为什么?
2.为什么 If not  Browser("首页").Page("网易").Exist Then 运行特别慢?运行指针指在这句好大一会不动。

请帮忙解决此问题。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-4-29 11:35:35 | 只看该作者
第一个问题,因为这个page对象还没打开,不存在,所以报错,你想不报错,就在最开头加上 On Error Resume Next

第二个问题,你得好好查一下帮助 为什么会那么慢?因为Exist这个函数默认等待时间20秒,你写为  Exist(0)  就非常快了!

原帖由 wangyong3552128 于 2007-4-29 11:16 发表
wait(1)
If not  Browser("首页").Page("网易").Exist Then

systemutil.Run"C:\Program Files\Internet Explorer\IEXPLORE.EXE"
       
Browser("首页").Page("Page").Sync
Browser("首页").Navigate "http:/ ...
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-4-29 13:52:17 | 只看该作者
Exist(0)

改了以后还是有点慢哦
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-4-29 15:23:49 | 只看该作者
学习
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-4-29 17:39:45 | 只看该作者
会慢不是因为语句的问题,你的代码里有没有sync同步点??
要等到网页载入才行,这不是qtp的问题,是你的IE打开一个网页需要一段时间,而程序执行需要等待。


原帖由 wangyong3552128 于 2007-4-29 13:52 发表
Exist(0)

改了以后还是有点慢哦
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-4-29 23:49:26 | 只看该作者
xuexi学习了
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-4-30 10:26:44 | 只看该作者
路过
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-6-11 15:04:17 | 只看该作者
学习中...
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-6-11 15:33:40 | 只看该作者
EXIST(1),应该指的是存在的时间为1秒,其实我个人觉得在if面前加不加wait,时间都是一样的
你可以从wait(1)前开始计时,到执行then后面的语句,加了wait跟没加wait应该是一样的.

判断某个控件不存在用if not本身就会比较慢,QTP要判断一个控件是否存在,除非马上找到了匹配了控件,否则它还会继续查找,需要等待一定的时间QTP才能断定这个控件是不存在的,才会去执行then后面的语句.

我个人的理解,呵呵,如有误,望指正
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2007-6-19 19:02:20 | 只看该作者
谢谢,你的解释。
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-6-20 15:24:38 | 只看该作者
支持一哈哈
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-6-22 16:50:05 | 只看该作者
累了,周末了,该休息了!
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2007-8-1 16:37:09 | 只看该作者
原帖由 wangyong3552128 于 2007-4-29 11:16 发表
wait(1)
If not  Browser("首页").Page("网易").Exist Then

systemutil.Run"C:\Program Files\Internet Explorer\IEXPLORE.EXE"
       
Browser("首页").Page("Page").Sync
Browser("首页").Navigate "http:/ ...


都是时间上的问题
网页还没出来
程序需要化时间去检查 网页是否存在
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2009-8-18 19:24:21 | 只看该作者

if then如何执行then后的多个语句

If  Browser("Browser").Window("新增IP池 -- 网页对话框").Dialog("Microsoft Internet Explorer").WinButton("确定").Click Then   
Browser("Browser").Window("新增IP池 -- 网页对话框").Dialog("Microsoft Internet Explorer").WinButton("确定").Click        :         Browser("Browser").Window("新增IP池 -- 网页对话框").Close
End If
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2009-8-18 21:26:03 | 只看该作者
哎~学到点知识
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-10 10:12 , Processed in 0.077729 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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