`
lucene3212
  • 浏览: 138041 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

QTP中虚拟对象设及应用实例

    博客分类:
  • java
阅读更多
    当我们在录制脚本中,有时会遇到某个对象回放时不能识别.那么就可以考虑是不是可以做个虚拟对象来代替它.您可以将这些对象定义为虚拟对象,并将它们映射到标准类,例如按钮或复选框。quicktest 在运行会话过程中模拟虚拟对象上的用户操作。在测试结果中,虚拟对象显示时类似标准类对象。
   下面我们还是通过一个例子来具体操作一下.这次选用loadruner自带的b/s架构的web例子,来录制脚本.(注:运行这个例子,同时把web server先给开起来.).这次只录制一个点击sign up(注册)的步骤.
录出脚本如下:

browser("mercury tours").page("mercury tours").frame("navbar").image("signup").click 45,12



qtp把这个button对象识别成了image(图片)对象,导致最后回放的时候,qtp不能完成click操作,弹出报错信息.对于这个对象,我马上想到了做个虚拟的button对象来代替它.

下面是整个虚拟对象的制作过程:

1.选择“工具”>“虚拟对象”>“新建虚拟对象”。或者,也可以在虚拟对象管理器中,单击“新建”。将打开虚拟对象向导。单击“下一步”。



2.选择要将您的虚拟对象映射到的标准类(这里有六种对象类供你选择,分别是object,button,table,list,check box,radio button).这里我们要映射一个button对象,所以选择button.单击"下一步"

3.单击“标记对象”。选择你要做虚拟对象的区域,拖动鼠标.尽量能覆盖整个你想替代的对象.

4.在“标识对象使用”框中,选择您希望 qtp 标识和映射虚拟对象的方式。

如果您想要 quicktest 标识所有出现的虚拟对象,请选择“parent only”。

如果想要 quicktest 仅标识一次出现的虚拟对象,请选择“entire parent hierarchy"。

这里我们选择默认的“parent only”。

5.指定虚拟对象的名称和集合。从集合列表中选择,或通过在“集合名”框中输入新名称来新建集合

点击完成,整个虚拟对象就做好了.

虚拟对象做好后,保存在虚拟对象管理器中.我们可以通过虚拟对象管理器来删除或禁用虚拟对象定义.

选择“工具”>“虚拟对象”>“虚拟对象管理器”。将打开虚拟对象管理器。

注意:如果希望 quicktest 在录制时识别虚拟对象,请确保清除“选项”对话框的“常规”选项卡中的“录制时禁止识别虚拟对象”复选框。

接下来我们再来录制一遍对sign up的操作,录制代码如下:

browser("mercury tours").page("mercury tours").frame("navbar").virtualbutton("button").click

在录制过程中值得注意的是,一定要点击到我们做好虚拟对象的范围内,这样qtp才能识别到这个虚拟对象.这里我们的虚拟对象识别成功.再次回放,qtp顺利的执行了脚本.

还有两点要注意的是:

1.虚拟对象管理器中显示的虚拟对象集合存储在您的计算机中,而不是随包含虚拟对象步骤的测试或组件存储。这意味着如果您在测试或组件步骤中使用虚拟对象,则仅当在包含正确的虚拟对象定义的计算机中运行时,该对象在运行会话过程中才能被识别。要将您的虚拟对象集合定义复制到另一个计算机,请将您的 <quicktest 安装文件夹>\dat\votemplate 文件夹的内容(或该文件夹中的单个 .vot 集合文件)复制到目标计算机上的相同文件夹中。

2.仅当录制和运行测试或组件时,才能使用虚拟对象。您不能在虚拟对象上插入任何类型的检查点,也不能使用“对象探测器”来查看其属性。

接下来你可以继续完成整个sign up过程,还有多个类似的对象需要做虚拟对象.你也可以试一下?

 
0
2
分享到:
评论

相关推荐

    QTP虚拟对象的使用

    QuickTest Professional(QTP),现...总的来说,QTP虚拟对象是一种强大的工具,能帮助应对自动化测试中的对象识别难题,提高测试覆盖率和稳定性。正确理解和使用虚拟对象,可以极大地提升QTP测试脚本的质量和可靠性。

    QTP对象识别常用方法介绍

    虚拟对象是QTP的一种特殊对象类型,用于模拟那些无法直接识别的UI元素。当标准的对象识别方法失效时,创建虚拟对象可以绕过识别障碍,确保测试过程的连续性。虚拟对象通常通过其在屏幕上的位置坐标来定位,适用于...

    QTP 技术集锦 学习QTP的好东东

    - **定义**: 虚拟对象是 QTP 中的一种特殊对象类型,用于表示无法直接识别的元素。 - **配置**: 如何在 QTP 中配置和使用虚拟对象。 #### 28. QTP 删除新建文本文件没有权限的问题 - **问题描述**: 当尝试使用 QTP ...

    QTP视频汇总

    - **定义说明**:虚拟对象是QTP中的一项高级特性,用于识别那些不易直接访问的对象。 - **应用场景**:如在复杂的Web页面或桌面应用程序中,某些对象可能因为层级结构复杂而不易识别。 通过上述知识点的总结,我们...

    QTP操作基本教程---入门级的好教程,以具体实例操作

    虽然图片检查点、数据库检查点和XML文件检查点在此教程中未详细涉及,但它们同样在QTP中有着广泛的应用,能确保各种类型的数据或元素在测试中被正确验证。 **3. 参数化** 参数化是提高测试脚本复用性和灵活性的关键...

    QTP11操作手册整理

    在操作系统方面,QTP11支持Windows XP至Windows 7,包括各种虚拟化环境,如VMware和VirtualPC。对于浏览器,它兼容IE 6到8及Firefox 3.0.x和3.5。此外,QTP11能够自动测试多种应用程序类型,如标准Windows应用、Web...

    QTP 入门教程

    - **执行操作**:按照预先设计好的测试案例操作应用程序。 - **结束录制**:完成测试案例后,停止录制。 **2.2.1 录制测试脚本** 在Keyword View中,可以看到QTP记录的每个步骤,包括操作的对象、执行的动作以及...

    qtp学习资料,适合于初学者的学习

    - **虚拟对象工具**:当QTP无法直接识别某些类型的对象时,可以使用`Tools &gt; Virtual Object`来创建虚拟对象。 - **示例场景**:例如,在测试ASP页面时,可能会遇到QTP无法识别的情况,此时可以利用虚拟对象工具解决...

    QTP技术集锦

    对于QTP无法识别的对象,可以创建虚拟对象来进行模拟,确保测试的覆盖。 **14. 文件系统操作** QTP允许直接操作文件系统,如创建、删除和读取文件,以满足测试需求。 **15. 异常控制** 通过异常控制结构,如Try......

    loadrunner 和 qtp 的一些资料

    它利用对象识别技术和智能关联功能,可以自动识别和处理应用中的对象,大大简化了脚本编写。 3. VBS基础: QTP和LoadRunner都基于Visual Basic Script(VBS)进行脚本编写。VBS是一种弱类型的解释型脚本语言,是...

    loadrunner和QTP视频教程汇总

    3. **对象库和智能识别**:讲解QTP如何识别和处理应用程序的对象,以及对象库的管理和维护。 4. **脚本语言VBS**:介绍QTP使用的Visual Basic Scripting Edition(VBS)语言,以及如何编写和修改测试脚本。 5. **...

    QTP学习与实践经验总结2.rar

    对象库是QTP的核心,它存储了应用程序中的各种对象及其属性,使得测试脚本能够识别并操作这些对象。在学习过程中,你需要掌握如何正确识别和配置对象库中的对象,以及理解不同类型的对象,如窗口、按钮、文本框等。 ...

    loadrunner 和QTP

    【标题】LoadRunner与QTP是两款在软件测试领域中广泛应用的工具,它们分别专注于不同的测试类型,但都属于功能强大的自动化测试解决方案。 【LoadRunner】 LoadRunner是一款由HP(现已被Micro Focus收购)开发的...

    QTP8 Tutorial_oldsidney教程.pdf

    - **Mercury Tours 示例网站:** Mercury Tours 是一个用于演示的虚拟旅游预订网站,广泛应用于QTP教程中作为练习对象。 **2. 录制测试脚本** - **准备动作:** 在录制脚本前,需要设置浏览器兼容性,确保与QTP8...

    测试工具学习

    3.7 虚拟对象(Virtual Object):用于模拟应用程序中未被WinRunner识别或行为异常的对象,允许自定义对象行为以适应测试需求。 四、WinRunner环境搭建 包括安装WinRunner软件、设置测试环境、配置所需的库和组件等...

    每日E测第四期.pdf

    这部分可能是读者对该书的读后感和心得分享,有助于了解QTP在实际项目中的应用案例及其高级功能。 ### 结论 通过对上述知识点的详细解析,我们可以了解到软件测试领域的一些核心技术和管理策略。无论是留住优秀的...

Global site tag (gtag.js) - Google Analytics