QTP - 虚拟对象



什么是虚拟对象?

有时,被测应用程序可能包含标准窗口对象,但 QTP 无法识别。在这种情况下,可以将对象定义为按钮、链接等类型的虚拟对象 (VO),以便在执行期间模拟用户对虚拟对象的交互。

示例

假设我们在自动化 Microsoft Word 中的场景。激活 MS Word 应用程序后,点击功能区中的任何图标。例如,点击功能区的“插入”选项卡,然后点击“图片”按钮。按钮被识别为 WinObject;因此,虚拟对象的重要性就突显出来了。

Window("Microsoft Word").WinObject("Ribbon").Click 145,45
Window("Microsoft Word").WinObject("Ribbon").WinObject("Picture...").Click 
170,104

创建虚拟对象

步骤 1 − 在此类场景中,可以使用虚拟对象管理器或从“工具”>>“虚拟对象”>>“新建虚拟对象”创建虚拟对象,然后点击“下一步”按钮。

Virtual Object Step 1

步骤 2 − 将对象映射到类类型,然后点击“下一步”。

Virtual Object Step 2

步骤 3 − 点击“标记对象”按钮。会出现十字准星光标,标记要映射的对象,然后点击“下一步”。

Virtual Object Step 3

步骤 4 − 选择虚拟对象的父对象,然后点击“下一步”。

Virtual Object Step 4

步骤 5 − 为要存储虚拟对象的集合命名,然后点击“完成”。

Virtual Object Step 5

虚拟对象管理器

虚拟对象管理器管理虚拟对象的集合。测试人员可以从虚拟对象管理器中添加或删除虚拟对象。

导航到虚拟对象管理器:“工具”>>“虚拟对象管理器”,如下所示:

Virtual Object Step 6

使用虚拟对象

创建虚拟对象后,可以使用创建的对象,如下所示:

Window("Microsoft Word").WinObject("Ribbon").VirtualButton("button").Click

虚拟对象的局限性

  • QTP 不支持模拟或低级录制中的虚拟对象。

  • 无法在虚拟对象上添加检查点。

  • 虚拟对象不受对象库控制。

  • 尽管我们将对象映射到特定类(按钮或列表),但虚拟对象不支持本机对象的所有方法。

  • 无法在虚拟对象上使用对象查看器。

  • 如果屏幕分辨率发生更改,则坐标也会发生更改,测试执行将失败。

  • 应用程序窗口应具有相同的屏幕尺寸,以便正确捕获虚拟对象。

广告