【软件测试自动化-QTP NOTE 1】 ==对象库-Object Repository==

 

写这个博客是想把自己过去学习的一些QTP知识整理下沉淀下,以笔记的形式发表在blog中,算是温故而知新吧~

希望看过的可以提些意见 互相勉励 互相学习。

-------------------------------------------------------------------------------------------------------------------------------------------------

Note1:对象库-Object Repository

所谓对象库 就是QTP存放对象的地方

QTP在对象库中为每一个获取的对象储存一个定义。这些定义包含了各种被用来确认唯一对象参数的值

比如innertext,html tag等,这些web对象参数都是可以通过IE Developer Toolbar获取的

PS:IEDT这个插件对于使用QTP的人来说非常实用,当然在IE8.0中已经被整合进去

对象添加至对象库

1.基本的录制过程中,QTP会自动把对象添加至OR

2.手动添加对象至对象库

手动添加对象至对象库时,这里QTP会启动对象选择模式(Object Selection Mode),从而对你选择的对象进行添加

 

这里有两种场景:

1.半操作场景:

临时无效化对象选择模式

长按CTRL,鼠标变成常规状态,可以进行鼠标的操作点击,完成后,释放CTRL,重新回归至对象选择模式

2.全操作场景:

如果在添加对象过程中,我们需要在不同程序直接切换,那样我们可以

按CTRL+ALT 从而使对象选择模式无效。那样我们就可以正常的操作其他任何程序

一旦完成后,按CTRL即可恢复到有效模式,从而开始添加对象

PS:这里区分模式的有效主要看鼠标的状态

--------------------------------------------------------------------------------------------------------------------

接下来是QTP对象库的基本操作方法

大致可以分为,SetTOProperty,GetROProperty,GetTOProperty

 


TO:Test Objects 测试库中的对象

 


RO:Run-time Objects 运行中的对象

 


SetTOProperty:修改对象库中对象的属性值

GetTOProperty:获取对象库中对象的属性值

GetROProperty:获取运行对象的属性值

Example1:改变测试对象的属性

view plaincopy to clipboardprint?
'创建一个WebEdit对象  
Set oWebEdit= Browser("Browser").Page("Page").WebEdit("txtName")  
'获取对象name  
oldName=oWebEdit.GetToProperty("name")  
'修改对象为 "new value"  
oWebEdit.SetToProperty "name","new value" 
'获取对象新name  
newName=oWebEdit.GetTOProperty("name")  
Msgbox newName 
'创建一个WebEdit对象
Set oWebEdit= Browser("Browser").Page("Page").WebEdit("txtName")
'获取对象name
oldName=oWebEdit.GetToProperty("name")
'修改对象为 "new value"
oWebEdit.SetToProperty "name","new value"
'获取对象新name
newName=oWebEdit.GetTOProperty("name")
Msgbox newName

 


Example2:在测试执行过程中获取run-time对象属性

view plaincopy to clipboardprint?
xxx=Browser("").Page("").WebEdit("").GetROProperty("value")  
Msgbox xxx 
xxx=Browser("").Page("").WebEdit("").GetROProperty("value")
Msgbox xxx

PS:QTP不提供Run-time对象属相的修改方法,因为其对象可以直接进行object.value的修改,所以大家可能没有看到SetROProperty。

------------------------------------------------------------------------------------------------------------------

最后是一些对于对象库的整体维护方法

1.对象库的保存

在对象库窗口,选择[Export Local Objects]命令,便可以把对象库以tsr格式的文件导出到本地

如图:

 

2.对象库的合并

在项目过程中,如果对象库是分裂状态的,最好是将其生成统一的对象库,其目的是为了让测试团队更好的维护和调用对象库

[Resources]->[Object Repository Manager]->[Tool]->[OR Merge Tool]

[Primary file]与[Secondary file]中导入单个对象库,最后QTP会自动合并成一个新的对象库。

如图:

 

3.对象库共享引用

将对象库合并为一个公共对象库,这是一个非常好的调用维护的方法

结合这一方法,可以继续将用例脚本一一对应到这个公共对象库中

[Resources]->[Associate Repositories]->关联到需要的用例Action

 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Tachibana814/archive/2010/02/28/5334305.aspx

 

 

posted on 2011-01-22 18:23  TIB  阅读(689)  评论(0编辑  收藏  举报

导航