软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试工具>>Mercury>>正文
对象库的管理与合并
文章出处:51testing博客 作者:ccc11yyy 发布时间:2007-01-12

    对于使用QTP做为自动化测试工具的测试项目来说,其对象库的管理在整个自动化测试过程中,占有非常重要的地位。特别是对于一个大型的应用系统,其界面的对象多而杂,一个统一、有序的对象仓库非常有利于脚本的快速开发,以及团队成员间的协作。

    然而,在实际使用中,虽然可以改变对象库中对象节点添加时的位置(如Tools->Options->Web->Page/Frame Options),但是在多人操作过程中,难免会出现偏离原始设计思路的地方。这个就需要对象库管理员进行修改纠正和修改。

    在Object Repository中,可以修改对象节点的名称,维护对象的属性,保存对象库,但并没有移动对象节点的功能。还好QTP提供了一个Reporsitories Merge Utility,可以实现对象库的合并功能。

    下面我们就来尝试使用Reporsitories Merge Utility来改变对象节点的位置。

    首先,复制三个源对象库,一个作为目标对象库,两个作为源对象库。
    然后,打开Reporsitories Merge Utility,如图

    选择好对象库所在的路径后,点击红框中的按钮,进入手动合并对象库页面。

    从左边的对象树上选择要移动的节点,目标的节点则默认是根节点。如果要移动到其他的节点下面,还需要在右边对象树上选择该节点才行。最后是点按钮Add top Level或者Add child,就将对象节点连同他的子节点一同添加到目标对象树上。也就是实现了我们的目标,把对象节点移位。

    好了,检查一下你需要的所有的对象是否都已经成功添加。

    注意一点,当遇到对象的descrīption完全相同的情况,即使节点的名字不同,QTP也会当作是相同的节点,不进行多次添加,即使在源对象树上是两个节点,添加到目标对象树上的仍然是一个节点。

    对于两边都有的父节点,可以对其进行Merge操作,合并子节点。操作同增加节点,不同的是要选中左右两边名字相同的节点,这样merge按钮才会出来。

    在合并的过程中,如果遇到对象的描述完全相同,会自动跳出Resolve Conflict页面,来帮助解决冲突。


    这里提供了4种选项,但是好像不管选择哪一种,QTP都不会把它认为描述相同的对象添加两次(这些对象都是在Object Repository中Add的)。

    个人感觉,Reporsitories Merge Utility针对于有多个节点相同的两个对象库,进行合并操作的时候不是很好用。我在做测试的时候,有两个节点没有自动添加进来,需要手动添加。而且出现了上述的对象描述相同但名字不同的情况,也是没有办法添加进来的。不过对于其他情况,还是可以做到添加新对象到统一的对象库中,把多人开发的结果集中到一起管理。

此文来源于51testing博客,转载请注明出处
原始链接:http://blog.51testing.com/?8181/action_viewspace_itemid_2890.html


站内搜索
相关文章
◎QTP的学习历程
◎LoadRunner学习——LoadRunner的安装
◎解决回放时浏览器乱码问题
◎TD与QTP连接
◎QTP中的描述性编程
◎测试结果报告知多少
◎QTP中设置共享对象库
◎设定时间让脚本自动运行
◎如何在QTP中使用IE以外浏览器录制和运行测试?
◎QTP中调用共享文件
◎如何使用qtp检查网页中显示的文字颜色为指定的颜色
◎LoadRunner使用虚拟IP测试流程
◎QTP中的步骤生成器
◎Robot GUI脚本操作SQL SERVER数据库
◎QTP脚本还可以这样写
◎对动态的weblist取得其name值
◎QTP中测试环境的初始化
◎QTP Recovery Scenario 简介
◎解决LR无法动态从数据库取值的方法
◎详解loadrunner的think time
◎QTP的登陆脚本设计
◎再论TD的数据迁移
◎关于IP欺骗的问题
◎LoadRunner与Winsock协议[翻译]
◎QTP的录制回放过程
◎LoadRunner函数介绍续
◎LoadRunner函数介绍
◎如何通过LoadRunner监控Linux和Unix操作系统的资源状况
◎专注于业务需求的自动化测试——Mercury Business Process Testing
◎如何查看LoadRunner虚拟用户(vuser)类型
◎使用LoadRunner测试TUXEDO
◎对LR回放中highest severity level was"ERROR"的解决方法
◎使用Winrunner进行性能测试
◎如何区分Server Time 和 Network Time
◎利用LR测试程序基类的性能
◎如何用LR监视服务器LINUX的方法
◎如何在QC中调用QTP进行测试
◎WinRunner使用经验介绍
◎使用LoadRunner来测试BEA TUXEDO(LoadRunner7.6)
◎MI测试工具介绍
◎VB 调用 QuickTestpro 脚本
◎QTP的登陆脚本设计
◎QTP的登陆脚本设计
◎loadruner报错:Step download timeout(120 seconds)的解决方法
◎QuickTestPro SP考试心得
◎LoadRunner本机录制http协议程序遇到的问题以及解决方法
◎关于"The RPC server is unavailable"的探讨及解决方案
◎QuickTestPro处理带有IFRAME的问题
◎QuickTestPro处理带有IFRAME的问题(续)
◎如何用QTP解析PDF
热门文章
◎主流测试工具介绍(1)
◎Winrunner经验总结
◎主流测试工具介绍(2)
◎主流测试工具介绍(3)
◎Winrunner TSL命令简介(一)
◎WinRunner的问题整理
◎LoadRunner监视的性能计数器
◎四款主流测试工具的测试流程
◎Loadrunner中参数的设置
◎LoadRunner的一个解决方案
◎让LoadRunner走下神坛
◎WinRunner 脚本标准格式
◎LoadRunner简化国泰航空测试流程
◎WinRunner如何实现自动化测试
◎利用loadrunner测试ORACLE存储过程的性能
◎jboss tomcat weblogic websphere 性能对比测试
◎Winrunner TSL命令简介(四)
◎Winrunner TSL命令简介(二)
◎使用LoadRunner测试TUXEDO
◎TestDirector项目数据迁移完整过程
◎LoadRunner函数介绍
◎关于"RPC server is unavailable"的解决方案
◎Winrunner TSL命令简介(三)
◎使用Winrunner进行性能测试
◎TD7.6 字段中英文对照表
◎Winrunner Context Sensitive命令列表
◎LoadRunner本机录制http协议程序遇到的问题以及解决方法
◎WinRunner使用经验介绍
◎TD中Case的复用
◎对脚本的建议
◎MI测试工具介绍
◎QTP的登陆脚本设计
◎如何用QTP解析PDF
◎winsock协议错误编码解析
◎TD 7.x 升级到 TD 8.0 的一些经验(SQLSERVER 下)
◎QuickTestPro SP考试心得
◎loadruner报错:Step download timeout(120 seconds)的解决方法
◎使用LoadRunner来测试BEATUXEDO (LoadRunner 7.6)
◎QuickTestPro中的快捷键
◎ERP功能测试最佳实践:10个步骤确保ERP系统的可靠性
◎高级测试管理的工具和技术
◎winsock的buffer简单解析
◎何谓 Keyword-Driven Testing?
◎LoadRunner学习——LoadRunner的安装
◎QTP的学习历程
◎使用LoadRunner来测试BEA TUXEDO(LoadRunner7.6)
◎LoadRunner函数介绍续
◎QTP的登陆脚本设计
◎关于"The RPC server is unavailable"的探讨及解决方案
◎改进质量和测试管理

Google提供的广告