【问题标题】:How to Zoom in or Zoom out in a webpage while using UFT/QTP如何在使用 UFT/QTP 时放大或缩小网页
【发布时间】:2015-10-08 14:03:51
【问题描述】:

我想使用 UFT 控制被测应用程序网页的放大和缩小功能。这是必需的,因为缩放级别动态变化并且难以识别对象。 我找到了一个代码,但如果您需要在一个实例或开始时更改缩放级别,它会很有用。下面是代码

Function ChangeIEZoom
Dim intZoomLevel, objIE
intZoomLevel = 110
 Const OLECMDID_OPTICAL_ZOOM = 63
 Const OLECMDEXECOPT_DONTPROMPTUSER = 2
 Set objIE = CreateObject("InternetExplorer.Application")
 objIE.Visible = True
 objIE.Navigate ("www.google.com")
 While objIE.Busy = True
 wait 5
 Wend
 objIE.ExecWB OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, CLng(intZoomLevel), vbNull
End Function

使用此代码,它会打开一个新浏览器并将其导航到一个 URL。

我不希望它创建浏览器的新实例。 我需要的是它更改已经在测试执行的同一页面上的缩放级别,以及在开始时不知道需要更改缩放级别的页面,并且它可能需要也可能不需要根据它识别的事实进行更改某些对象。

有没有人遇到过同样的问题或有解决方案?

【问题讨论】:

  • 如果主要是您想摆脱新实例的创建,使用现有的 IE 实例,请参阅stackoverflow.com/questions/941767/…(第一个答案,第三个选项)以获得可能的解决方案。
  • 您好,感谢您的回复。我想在测试运行过程中更改应用程序的缩放级别。我不想创建新实例,我想更改正在测试的当前网页的缩放级别。
  • 谢谢@TheBlastOne - 根据您的 cmets,我找到了解决方案
  • 很高兴能提供帮助!并感谢分享解决方案。

标签: vbscript automated-tests qtp hp-uft


【解决方案1】:

我找到了一个解决方案 - 结合你在 cmets 中提到的内容。如果您想更改您正在处理的当前网页的缩放级别,则此方法有效。当您想要放大和缩小多个实例时会有所帮助

Dim ShellApp
Set ShellApp = CreateObject("Shell.Application")
Dim ShellWindows
Set ShellWindows = ShellApp.Windows()
Dim intZoomLevel
intZoomLevel = 110
Const OLECMDID_OPTICAL_ZOOM = 63
Const OLECMDEXECOPT_DONTPROMPTUSER = 2
Dim i
For i = 0 To ShellWindows.Count - 1
    If InStr(ShellWindows.Item(i).FullName, "iexplore.exe") <> 0 Then
        Set IEObject = ShellWindows.Item(i) 
    End If
    If IEObject.Visible = True Then
    While IEObject.Busy = True
     wait 5
    Wend
     IEObject.ExecWB OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, CLng(intZoomLevel), vbNull    
    End If
Next
print "it works" 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-26
    • 1970-01-01
    • 2013-11-09
    • 1970-01-01
    相关资源
    最近更新 更多