使用ORM对象库自动化模型来读取对象库TSR中的信息
ORAOM:Object Repository automation object model(对象库自动化模型对象)
本文脚本不需要QTP加载对象库,就能读取对象库中的内容,包括对象名称和各个属性值。
'创建ObjectRepositoryUtil对象 Set ObjRepoUtil = CreateObject("Mercury.ObjectRepositoryUtil") '加载对象库tsr文件 ObjRepoUtil.Load "D:/对象库.tsr" '打印全部对象属性值 PrintObjInfo ObjRepoUtil, "ROOT", "" Set ObjRepoUtil = Nothing Sub PrintObjInfo(ByRef ObjRepoUtil, ByRef Parent, ByVal tab) If TypeName(Parent)="String" Then print Parent 'ROOT对象不打印属性 Else tab = tab & vbTab '获得当前对象所有属性,并组装成字符串 Set props = Parent.GetTOProperties For j=0 to props.count-1 propstr = propstr & "," & props(j).name & ":=" & props(j).value Next '打印当前对象名称和属性值 print tab & ObjRepoUtil.GetLogicalName(Parent) &",Class:=" & Parent.GetTOProperty("class name") & propstr Set props = Nothing End If '获得当前对象的所有子对象 Set chdobj=ObjRepoUtil.GetChildren(Parent) If chdobj.count > 0 Then '有子对象则递归调用本函数,输出子对象信息 For i=0 To chdobj.count-1 PrintObjInfo ObjRepoUtil, chdobj.item(i), tab Next End If Set chdobj=Nothing End Sub
相关推荐
hickwu 2020-06-16
Ongoingcre 2020-06-09
wintelx 2020-05-11
gdb 2020-05-01
atb 2020-04-18
cuixingwudi 2020-02-21
fenxinzi 2020-01-11
smalllove 2019-12-24
qidu 2019-12-16
secondid 2019-12-05
hazing 2014-03-18
zyccsdn 2015-07-27
怪盗基德 2017-09-22
lcyangcss 2019-10-25
codeAB 2019-10-23
Geeny 2019-09-08
Will0 2012-03-21