QTP的那些事--页面的加载的使用方式

方法一:

Set ie=CreateObject("InternetExplorer.Application")

Do Until Not ie.Busy And ie.ReadyState = 4/READYSTATE_COMPLETE

这种方式有时候也不行。

有时候IE进度条在含有框架的页面里面,已经加载完成的页面,进度条却还在跑,所以你这样判断可能会有问题。我写过一个函数,是通过判断进度条前面的提示字符来判断的,还没完善,看是否能满足你的需要。
Function IE_WaitUntilLoadFinish(sec_time)
'IE等待状态栏提示完成,直到超过指定时间
    loadFinish="no"
    For i=1 To sec_time   '等待指定时间
       ieHint=Browser("title:=XXXXXX").WinStatusBar("regexpwndclass:=msctls_statusbar32").GetRoproperty("regexpwndtitle")
       If RegExpTest("正在打开网页",ieHint)>0 Then
           wait(1)
           ElseIf ieHint="网页上有错误" Then
               ElseIf  ieHint="完毕" Then
                   loadFinish="yes"
                   Exit For
       End If
    Next  
    IE_WaitUntilLoadFinish=loadFinish
    If loadFinish="no" Then
       captureFileName=ErrorCapture("系统加载过慢")         'ErrorCapture是自定义的全屏捕捉函数
       Reporter.ReportEvent micFail,"系统加载过慢,详见截图"&captureFileName&"","错误"   
    End If
End Function
RegExpTest这个函数是我修改帮助里面的同名函数而来,代码如下
Function RegExpTest(patrn, strng)
'返回匹配要求的字符串数量
   Dim regEx, Match, Matches   ' Create variable.
   Set regEx = New RegExp   ' Create regular expression.
   regEx.Pattern = patrn   ' Set pattern.
   regEx.IgnoreCase = True   ' Set case insensitivity.
   regEx.Global = True   ' Set global applicability.
   Set Matches = regEx.Execute(strng)   ' Execute search.
   RegExpTest = Matches.Count
End Function


本文转自hcy's workbench博客园博客,原文链接:http://www.cnblogs.com/alterhu/archive/2012/04/19/2458606.html,如需转载请自行联系原作者。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值