`

QTP中Browser对象的方法补充:激活、最大化、最小化

 
阅读更多

做Web自动化测试的时候,有时需要对浏览器进行一些特殊的操作,比如浏览器的激活、最大化和最小化。熟悉C/S自动化测试的朋友应该都知道Window对象是有这些方法的,而Browser对象则没有。

        当然了, 我们可以自己写一些函数来弥补这个不足,其原理是通过获取浏览器的句柄,然后使用描述性编程来操作Window对象。

        PS:所谓句柄是指,使用的一个唯一的整数值,即一个四字节长的数值,来标志应用程序中的不同对象和同类对象中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。

 

Activate Browser

 

[vb] view plaincopy
 
  1. ' 注册自定义Activate函数    
  2. RegisterUserFunc "Browser""Activate""BrowserActivate"    
  3.     
  4. Function BrowserActivate(ByRef Object)    
  5.     Dim HWND    
  6.     ' 获取浏览器程序句柄    
  7.     HWND= Object.GetROProperty("hwnd")    
  8.      
  9.     On Error Resume Next    
  10.         ' 激活句柄等同于浏览器句柄的窗口程序    
  11.         Window("hwnd:=" & HWND).Activate    
  12.      
  13.         If Err.Number <> 0 Then    
  14.             Window("hwnd:=" & Browser("hwnd:=" & HWND).Object.HWND).Activate    
  15.             Err.Clear    
  16.         End If    
  17.     On Error Goto 0    
  18. End Function   

 

Maximize Browser

 

[vb] view plaincopy
 
  1. ' 注册自定义Minimize函数    
  2. RegisterUserFunc "Browser""Minimize""BrowserMinimize"    
  3.     
  4. Function BrowserMinimize(ByRef Object)    
  5.     Dim HWND    
  6.     ' 获取浏览器程序句柄    
  7.     HWND= Object.GetROProperty("hwnd")    
  8.      
  9.     On Error Resume Next    
  10.         ' 激活句柄等同于浏览器句柄的窗口程序    
  11.         Window("hwnd:=" & HWND).Activate    
  12.      
  13.         If Err.Number <> 0 Then    
  14.             HWND = Browser("hwnd:=" & HWND).Object.hWnd    
  15.             Window("hwnd:=" & HWND).Activate    
  16.             Err.Clear    
  17.         End If    
  18.         ' 最小化句柄等同于浏览器句柄的窗口程序    
  19.         Window("hwnd:=" & HWND).Minimize    
  20.     On Error Goto 0    
  21. End Function  <strong>  
  22. </strong>  

 

Minimize Browser

 

[vb] view plaincopy
 
  1. ' 注册自定义Minimize函数    
  2. RegisterUserFunc "Browser""Minimize""BrowserMinimize"    
  3.     
  4. Function BrowserMinimize(ByRef Object)    
  5.     Dim HWND    
  6.     ' 获取浏览器程序句柄    
  7.     HWND= Object.GetROProperty("hwnd")    
  8.      
  9.     On Error Resume Next    
  10.         ' 激活句柄等同于浏览器句柄的窗口程序    
  11.         Window("hwnd:=" & HWND).Activate    
  12.      
  13.         If Err.Number <> 0 Then    
  14.             HWND = Browser("hwnd:=" & HWND).Object.hWnd    
  15.             Window("hwnd:=" & HWND).Activate    
  16.             Err.Clear    
  17.         End If    
  18.         ' 最小化句柄等同于浏览器句柄的窗口程序    
  19.         Window("hwnd:=" & HWND).Minimize    
  20.     On Error Goto 0    
  21. End Function    

 

 

        由于使用了RegisterUserFunc,我们可以在QTP中直接使用自定义的函数,和Browser对象实现无缝结合。http://blog.csdn.net/snakeshiy/article/details/7439455

分享到:
评论

相关推荐

    QTP:虚拟对象需要注意的两点

    ### QTP:虚拟对象需要注意的两点 在自动化测试领域中,QTP(QuickTest Professional)是一款功能强大的工具,被广泛应用于各种软件应用的功能性测试。虚拟对象是QTP中的一个重要概念,它允许测试人员对非标准或...

    QTP自动化对象模型参考

    QTP自动化对象模型是其核心组成部分,它定义了如何识别和操作被测应用程序中的各种对象。对象模型提供了一种结构化的框架,允许测试人员通过编程接口与应用的元素进行交互,如点击按钮、输入文本等。这一模型基于...

    QTP对象库简介QTP对象库简介

    - **对象识别属性选取**: 在Tools &gt; Object Identification中选择对应的插件来查看控件类型,进而查看QTP封装对象的关键识别属性。 #### 五、QTP工具基础详解 - **Add-in Manager**: 启动QTP时会出现Add-in ...

    qtp视图方法大全

    QTP 视图方法大全是 QTP tester 在自动化测试中常用的视图方法的总结。这些方法可以用于激活对象、捕获位图、检查属性、获取对象的子对象、点击、关闭、双击、拖曳、拖放等操作。 对象的方法 Activate: 激活对象...

    使用QTP测试不同对象

    在QTP中,我们可以使用特定的对象来访问和操作测试环境的不同元素。本文将详细讲解如何使用QTP测试Windows对象——Desktop对象,以及SystemUtil对象和ClipBoard对象的使用。 首先,我们来看Desktop对象。Desktop...

    QTP对象识别常用方法介绍

    总结,QTP对象识别是自动化测试的关键环节,理解并掌握以上方法能帮助测试人员更高效、准确地识别和操作应用程序对象,从而提高测试的质量和效率。通过灵活运用这些技巧,可以应对各种复杂的应用场景,确保测试脚本...

    通过自定义对象来操作一些QTP录制脚本无法驱动的对象

    在QTP中,自定义对象是指用户根据特定需求手动创建的对象,这些对象可以帮助我们识别和操作那些QTP默认不支持或难以识别的元素。通过自定义对象,我们可以更加灵活地控制测试过程中的各种复杂情况。 #### 二、为...

    QTP等待对象的方法

    在自动化测试领域,QuickTest Professional (QTP) 是一款广泛使用的功能自动化测试工具。QTP 提供了多种方法来处理对象的同步问题,确保在执行测试脚本时能正确识别和操作目标对象。本文主要讨论的是如何在QTP中通过...

    第13篇-QTP对象管理机制(1)

    QTP将对象封装在“对象模型”中,这意味着测试脚本可以像操作对象一样调用方法和属性。例如,对于一个按钮对象,可以调用Click()方法使其被点击。 4. **对象的重用**: 由于对象库的存在,相同或相似的对象在多个...

    QTP识别对象的原理

    1. **对象库**:这是QTP存储所有已识别对象的地方,包括它们的类、属性和方法。每个对象都由其特定的类定义,比如按钮、文本框等。当QTP运行时,它会将应用程序窗口中的对象与对象库中的模板进行匹配,从而识别出...

    QTP对象识别常用方法

    本文将深入探讨QTP中的对象识别方法,帮助您更高效地进行自动化测试。 1. **对象库(Object Repository)**:对象库是QTP存储所有测试对象的地方,每个对象都有其唯一的标识符,包括名称、类名和属性。在录制测试时,...

    QTP

    【QTP对象识别方法总汇】和【QTP对象识别常用方法介绍】:这两份文档详细阐述了QTP如何识别和处理应用程序中的各种对象,包括默认的识别机制和如何通过描述性编程来手动指定对象特征。 【QTP中描述性编程脚本指导】...

    QTP自动化对象模型中文版

    QTP自动化对象模型中文版

    QTP 自动化对象模型

    **QTP(QuickTest Professional)自动化对象模型**是HP(现为Micro Focus)公司推出的自动化测试工具中的核心组件,主要用于软件功能测试的自动化。QTP的对象模型是它能够识别并操作应用程序中的各种对象的基础,这...

    QTP对标准web对象的测试

    综上,QTP测试标准Web对象时,涉及了DOM操作、Web控件的属性访问、Browser对象方法的使用、页面元素计数、Frame对象以及Image对象的验证等,这些都是QTP自动化测试的重要组成部分,能够有效地实现Web应用的自动化...

Global site tag (gtag.js) - Google Analytics