QTP – 虚拟对象
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 – 在这种情况下,使用虚拟对象管理器或从“工具”>>“虚拟对象”>>“新虚拟对象”创建新虚拟对象,然后单击“下一步”按钮创建虚拟对象。
第 2 步– 根据类类型映射对象,然后单击“下一步”。
步骤 3 – 单击“标记对象”按钮。将出现一个十字光标并标记您要映射的对象,然后单击“下一步”。
步骤 4 – 选择虚拟对象的父对象,然后单击“下一步”。
步骤 5 – 命名要存储虚拟对象的集合,然后单击“完成”。
虚拟对象管理器
虚拟对象管理器管理虚拟对象的集合。测试人员可以从虚拟对象管理器中添加或删除虚拟对象。
导航到虚拟对象管理器:“工具”>>“虚拟对象管理器”,如下所示 –
使用虚拟对象
创建虚拟对象后,可以使用创建的对象,如下所示 –
Window("Microsoft Word").WinObject("Ribbon").VirtualButton("button").Click
虚拟对象限制
-
QTP 不支持用于模拟或低级记录的虚拟对象。
-
不能在虚拟对象上添加检查点。
-
虚拟对象不受对象存储库控制。
-
虽然我们将一个对象映射到一个特定的类(按钮或列表),但虚拟对象并不支持原生对象的所有方法。
-
对象间谍不能用于虚拟对象。
-
如果屏幕分辨率随着坐标的变化而变化,则测试执行将失败。
-
应用程序窗口应具有相同的屏幕大小,以便正确捕获虚拟对象。