`

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(QuickTest Professional)中,对象是指存在于对象库中的各种类型的元素。这些元素可以是用户界面上的任何组成部分,如按钮、文本框等。例如,一个页面中的“申请验证码”按钮,其HTML源代码...

    QTP

    【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应用的自动化...

    QTP回放时不能识别对象

    在自动化测试领域,QuickTest Professional (QTP) 是一款广泛使用的功能自动化测试工具。在使用QTP进行测试时,有时会遇到“QTP回放时不能识别对象”的问题,这通常是由于对象的描述不匹配或者对象在运行时不可见所...

Global site tag (gtag.js) - Google Analytics