📜  QTP-自动化对象模型(1)

📅  最后修改于: 2023-12-03 15:34:34.518000             🧑  作者: Mango

QTP-自动化对象模型

QTP是一款广泛使用的自动化测试工具,它通过使用自动化对象模型来与被测应用程序交互。自动化对象模型定义了应用程序中的每个对象及其属性和方法,使开发人员能够编写测试脚本并控制应用程序中的对象。以下是QTP自动化对象模型的一些重要概念和用法。

对象层次结构

QTP自动化对象模型的根对象是Application对象,代表整个应用程序。应用程序中的每个控件或窗口都是应用程序对象模型中的对象,这些对象可以是嵌套的,形成对象层次结构。例如,Web页面中的对象层次结构如下所示:

  • Application
    • Browser
      • Page
        • Frame
          • Link
          • Image
        • Div
          • Textbox
          • Button
        • Table
          • Row
            • Cell

在测试脚本中,可以通过一系列对象类型和方法来访问对象层次结构中的每个控件或窗口。例如,以下是一个访问Web页面中某个按钮的示例代码:

Set objBrowser = Browser("title:=My Web Page")
Set objButton = objBrowser.Page("title:=Login").WebButton("name:=loginButton")
objButton.Click
对象识别方式

为了访问应用程序对象模型中的对象,需要在测试脚本中指定对象的唯一标识符。QTP支持多种对象识别方式,包括:

  • Property: 使用对象的一个或多个属性来标识对象,例如使用按钮的name属性来标识它。
  • ChildObjects: 使用对象在其父对象中的位置或索引来标识对象。
  • RegularExpression: 使用正则表达式来匹配对象的属性值。
  • OrdinalIdentifier: 使用对象在对象层次结构中的位置或索引来标识对象。

在测试脚本中,可以通过指定属性和值来标识对象。例如,以下是一个使用name属性来标识按钮的示例代码:

Set objButton = Browser("title:=My Web Page").Page("title:=Login").WebButton("name:=loginButton")
对象属性和方法

QTP自动化对象模型中的每个对象都拥有其自身的一组属性和方法。这些属性和方法可以用来访问和操作对象的状态和行为。以下是一些常用的对象属性和方法:

  • Exist: 指示对象是否存在。
  • Text: 返回对象的文本值。
  • Set: 设置对象的属性值。
  • Click: 模拟单击对象。
  • Type: 输入文本到对象中。
  • GetVisibleText: 返回对象可见部分的文本值。
  • GetROProperty: 返回对象的只读属性值。
  • GetTOProperty: 返回对象的测试对象属性值。

在测试脚本中,可以通过对象的属性和方法来访问和操作对象。例如,以下是一个点击按钮并输入文本到文本框的示例代码:

Set objButton = Browser("title:=My Web Page").Page("title:=Login").WebButton("name:=loginButton")
objButton.Click
Set objTextbox = Browser("title:=My Web Page").Page("title:=Login").WebEdit("name:=username")
objTextbox.Set "myusername"
总结

QTP自动化对象模型是QTP的核心功能之一,它定义了应用程序中的每个对象及其属性和方法。熟练掌握QTP自动化对象模型是编写QTP测试脚本的关键。