- 浏览: 138041 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (137)
- java (138)
- c# winform (笨方法)根据不同的样式配置 设置窗体相关控件的背景 以改变窗体风格 (1)
- Android平台下实现一个进程管理器 (1)
- 装饰模式 (1)
- 【转】介绍线性代数 (1)
- fqueue初步分析 (1)
- 千万级sql优化 (1)
- 开源项目 (1)
- js弹出遮罩层【并弹出提示信息】 (1)
- 代码高亮、源码格式、iteye代码格式的种种方法 (1)
- Drupal学习笔记(四)warning: array_key_exists(): The first argument should be either a string or an integer (1)
- 2011年Java EE生产力报告 (1)
- java(j2se)学习笔记----类注释文档编写方法? (1)
- ubuntu 添加应用程序 到快速启动 (1)
- JPA注解配置实例 (1)
- C++著名内裤 (1)
- Android笔试或者面试的几个题目 (1)
- Ajax&&GWT (1)
- IHS静默安装(转) (1)
- WIN98下运行DOTNET程序的一些问题 (1)
- 开启新的项目——基于电子邮件的知识管理系统 (1)
- 这里的BLOG服务器也太不稳定了 (1)
- MapXtreme2004代码 读取TAB表中的元素 (1)
- 终于把我的大部分BLOG复制到这里来了 (1)
- 2011NOKIA笔试题目 (1)
- Ajax实现省市二级联动(源代码) (1)
- mxgraph之保存图片 (1)
- sso单点登录 (1)
- Android开发之SurfaceView (1)
- Android开发之ListView (1)
- SQL SERVER 2008 中分页方法集锦 (1)
- 2011-12-2 (1)
- 分页组件 (1)
- Myeclipse自动加入struts 2 Core Libraries导致antlr错误 (1)
- jbpm4在tomcat6中EL错误 (1)
- c++中有关数组和指针的若干问题 (1)
- rails 上传文件和删除文件 (1)
最新评论
-
mazongfei:
就是有点乱,不过还是不错的
sso单点登录 -
xiaokang1582830:
写得这么乱,地球人是无法看得懂的...
sso单点登录 -
shenyu:
大侠,下回分解在哪里啊?
mxgraph之保存图片 -
GZQ0821:
为啥不编译后贴出来呢!
SQL SERVER 2008 中分页方法集锦 -
evil9999:
http://belives2012.blog.163.com ...
千万级sql优化
当我们在录制脚本中,有时会遇到某个对象回放时不能识别.那么就可以考虑是不是可以做个虚拟对象来代替它.您可以将这些对象定义为虚拟对象,并将它们映射到标准类,例如按钮或复选框。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过程,还有多个类似的对象需要做虚拟对象.你也可以试一下?
下面我们还是通过一个例子来具体操作一下.这次选用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过程,还有多个类似的对象需要做虚拟对象.你也可以试一下?
发表评论
-
rails 上传文件和删除文件
2012-02-07 14:33 1121文件上传,页面代码: <%form_tag '/ ... -
c++中有关数组和指针的若干问题
2012-02-07 14:13 822<pre class="reply-t ... -
jbpm4在tomcat6中EL错误
2012-02-04 14:03 1089? jbpm4 在tomcat6 下面ssh2 这个错 ... -
Myeclipse自动加入struts 2 Core Libraries导致antlr错误
2012-02-04 13:29 995解决方法: 选择windows---preferenc ... -
分页组件
2012-02-03 12:23 927撒地方阿斯顿的撒啊受到爱上 ... -
2011-12-2
2012-02-02 15:34 752ubuntu系统root默认密码,每次开机会随机产生默 ... -
SQL SERVER 2008 中分页方法集锦
2012-02-01 09:34 1406<span style="font-s ... -
Android开发之ListView
2012-01-31 13:53 1271<p><br></p&g ... -
Android开发之SurfaceView
2012-01-11 15:34 1262<h1>Android开发 ... -
sso单点登录
2012-01-11 12:44 3961SSO单点登录 目 ... -
mxgraph之保存图片
2011-12-28 18:38 24501、写在前端:任何情况下,保存图片不可能只通过前台代码 ... -
Ajax实现省市二级联动(源代码)
2011-12-28 16:23 5021<span style="font-f ... -
2011NOKIA笔试题目
2011-12-21 09:29 1078今天去NOKIA机试,纯粹打酱油,没什么准备,题目貌似 ... -
终于把我的大部分BLOG复制到这里来了
2011-12-16 16:22 1041本来我的BLOG都在博客中国的<img src= ... -
MapXtreme2004代码 读取TAB表中的元素
2011-12-15 12:14 957<?xml:namespace prefix = ... -
这里的BLOG服务器也太不稳定了
2011-12-14 20:53 699<p class="MsoPlainT ... -
开启新的项目——基于电子邮件的知识管理系统
2011-12-14 19:59 944</span></font>& ... -
WIN98下运行DOTNET程序的一些问题
2011-12-14 17:24 814</span></font>& ... -
IHS静默安装(转)
2011-12-13 11:59 1335<span style="col ... -
Ajax&&GWT
2011-12-13 10:14 680工作的久了,一直忙于公司相关的技术和业务上,对于如今流 ...
相关推荐
QuickTest Professional(QTP),现...总的来说,QTP虚拟对象是一种强大的工具,能帮助应对自动化测试中的对象识别难题,提高测试覆盖率和稳定性。正确理解和使用虚拟对象,可以极大地提升QTP测试脚本的质量和可靠性。
虚拟对象是QTP的一种特殊对象类型,用于模拟那些无法直接识别的UI元素。当标准的对象识别方法失效时,创建虚拟对象可以绕过识别障碍,确保测试过程的连续性。虚拟对象通常通过其在屏幕上的位置坐标来定位,适用于...
- **定义**: 虚拟对象是 QTP 中的一种特殊对象类型,用于表示无法直接识别的元素。 - **配置**: 如何在 QTP 中配置和使用虚拟对象。 #### 28. QTP 删除新建文本文件没有权限的问题 - **问题描述**: 当尝试使用 QTP ...
- **定义说明**:虚拟对象是QTP中的一项高级特性,用于识别那些不易直接访问的对象。 - **应用场景**:如在复杂的Web页面或桌面应用程序中,某些对象可能因为层级结构复杂而不易识别。 通过上述知识点的总结,我们...
虽然图片检查点、数据库检查点和XML文件检查点在此教程中未详细涉及,但它们同样在QTP中有着广泛的应用,能确保各种类型的数据或元素在测试中被正确验证。 **3. 参数化** 参数化是提高测试脚本复用性和灵活性的关键...
在操作系统方面,QTP11支持Windows XP至Windows 7,包括各种虚拟化环境,如VMware和VirtualPC。对于浏览器,它兼容IE 6到8及Firefox 3.0.x和3.5。此外,QTP11能够自动测试多种应用程序类型,如标准Windows应用、Web...
- **执行操作**:按照预先设计好的测试案例操作应用程序。 - **结束录制**:完成测试案例后,停止录制。 **2.2.1 录制测试脚本** 在Keyword View中,可以看到QTP记录的每个步骤,包括操作的对象、执行的动作以及...
- **虚拟对象工具**:当QTP无法直接识别某些类型的对象时,可以使用`Tools > Virtual Object`来创建虚拟对象。 - **示例场景**:例如,在测试ASP页面时,可能会遇到QTP无法识别的情况,此时可以利用虚拟对象工具解决...
对于QTP无法识别的对象,可以创建虚拟对象来进行模拟,确保测试的覆盖。 **14. 文件系统操作** QTP允许直接操作文件系统,如创建、删除和读取文件,以满足测试需求。 **15. 异常控制** 通过异常控制结构,如Try......
它利用对象识别技术和智能关联功能,可以自动识别和处理应用中的对象,大大简化了脚本编写。 3. VBS基础: QTP和LoadRunner都基于Visual Basic Script(VBS)进行脚本编写。VBS是一种弱类型的解释型脚本语言,是...
3. **对象库和智能识别**:讲解QTP如何识别和处理应用程序的对象,以及对象库的管理和维护。 4. **脚本语言VBS**:介绍QTP使用的Visual Basic Scripting Edition(VBS)语言,以及如何编写和修改测试脚本。 5. **...
对象库是QTP的核心,它存储了应用程序中的各种对象及其属性,使得测试脚本能够识别并操作这些对象。在学习过程中,你需要掌握如何正确识别和配置对象库中的对象,以及理解不同类型的对象,如窗口、按钮、文本框等。 ...
【标题】LoadRunner与QTP是两款在软件测试领域中广泛应用的工具,它们分别专注于不同的测试类型,但都属于功能强大的自动化测试解决方案。 【LoadRunner】 LoadRunner是一款由HP(现已被Micro Focus收购)开发的...
- **Mercury Tours 示例网站:** Mercury Tours 是一个用于演示的虚拟旅游预订网站,广泛应用于QTP教程中作为练习对象。 **2. 录制测试脚本** - **准备动作:** 在录制脚本前,需要设置浏览器兼容性,确保与QTP8...
3.7 虚拟对象(Virtual Object):用于模拟应用程序中未被WinRunner识别或行为异常的对象,允许自定义对象行为以适应测试需求。 四、WinRunner环境搭建 包括安装WinRunner软件、设置测试环境、配置所需的库和组件等...
这部分可能是读者对该书的读后感和心得分享,有助于了解QTP在实际项目中的应用案例及其高级功能。 ### 结论 通过对上述知识点的详细解析,我们可以了解到软件测试领域的一些核心技术和管理策略。无论是留住优秀的...