QTP中设置共享对象库
很多时候我们总是觉得管理QTP的脚本比较烦.因为除了要对代码的管理之外,还要保证QTP对象库的完整.每一个用例脚本的生成,同时又都会生成一个对象库.那么是不是可以做一个公共的对象库来给各个用例脚本调用呢?接下来,我们就来实现共享对象库的应用.
第一步:把需要加到共享对象库中的各个用例脚本的对象库,分别导出成.tsr文件.
操作方法:先用QTP打开已经录制完毕的脚本后,选择Resources-->Object Repository.
然后file-->export....取名导出文件.如下图:
第二步:把需要加入到共享对象库中的各个用例脚本的对象库,合并对象及对象属性,形成一个大的共享对象库.
操作方法:打开Resources-->Object Repository Manager.找到Tools菜单,然后选择打开Object Repository merge tool.选择两个要合并的对象库文件,进行对象合并.一次只能合并两个.所以如果这里你要合并多个对象库文件的话,先合并两个后,保存成一个新的.tsr文件.然后再重复上面的操作,选择这个新的.tsr文件和另一个准备好的对象库合并.如下图:
合并的时候,你会发现,在两个对象库文件中,相同的对象合并成一个,不同的对象,全部被完整增加进去.然后形成一个大的对象库.现在只要保存这个共享对象库.如果以后有新增的对象,可以重复上述操作.
第三步:调用上面保存好的共享对象库.给新的脚本使用.
操作步骤:Resources-->Associate Repository.选择上面保存好的共享对象库的.tsr文件.加入到Associate Repository中.如下图:
完成这一步后,其实整个共享对象库的操作已经完成.你在对象库中可以看到以后的对象.在录制新脚本的时候,如果对象已经存在,就不会再被记录,只有在这个对象库中没有的对象才会被记录进去.回放脚本,对象识别成功.
(注:此操作只适合与装有QTP9.0的版本.对于8.2版本不适合)
附:8.2版本中的共享对象库操作
QTP8.2的共享方法
1.选择“测试”>“设置”>“资源”选项卡。
2.在“对象库类型”区域,“共享”。
请指定要用作对象库文件的共享对象库文件。要指定文件,请输入对象库文件名,或单击浏览按钮并从“打开”对话框中选择资源文件。要新建共享对象库文件,请在“共享”框中输入新文件名。
对象库文件的默认文件扩展名是.tsr,但是文件可能使用任何扩展名。在“打开”对话框中浏览现有对象库文件时,在“文件类型”框中选择“所有文件”。
3.注:请在新测试开始录制前进行设置,已有测试的对象库模式不能进行修改。
对象库是在自动化测试过程中非常重要的一个环节,但是对象库在使用其实也分为两种模式:
· 本地模式
· 共享模式
本地模式其实就是qtp默认的单个Action模式,它的优势就是可直接更新对象,并且当改变对象名之后当前脚本可以自动更新对象名,缺点也很明显测试脚本一多容易出现很多重复对象,而且维护比较麻烦,团队开发时容易出现混乱。
使用方法:打开一个脚本并输入快捷键Ctrl+R打开对象库,此时的对象库就是本地action
共享模式是一种可以共享给所有脚本的的模式,它的优势也是很明显适合团队开发,在大量测试脚本中不容易出现重复对象,维护对象属性比较容易,缺点是修改对象名(这里的对象名指的是qtp封装的对象名称,而非对象的name属性)后不能对所有使用其修改对象的脚本进行自动更新。
使用方法:打开一个脚本后,进入菜单栏Rescouces–> Associate Repositories,点击“+”添加Tsr对象库文件(可由对象库中进行导出),并选择相应的Actions点击ok即可。此时打开对象库后可以看到库已经被成功加载到对象库中,但共享对象显示的时灰色的,意味着我们无法直接对其进行修改。这也是为了保证共享对象的不被乱改掉,而导致其他调用它的脚本无法直接进行执行。