TestComplete 对象管理
作者: Max.Bai
时间: 2012/12
Object Manage
1. Name Mapping
Base mode: 通过添加的对象属性来识别对象
Conditional mode: 这个功能可以使用and, or 条件组合来设置识别对象的属性
在修改对象识别窗口点击conditional mode可以打开conditional mode,可以通过点击 and 和or 来组合识别条件,选中已存在条件点击and 或or 可以实现括号组合条件。
Name mapping template: 这个功能是添加识别对象的模板用来识别对象,当自动识别的属性不够时,可以通过手动添加属性来设置,模板可以用来批量设置对象识别属性。
2. Aliases
就是对象的别名了,可以通过拖拽对象来修改层级关系,让很长的对象名变的很短,使用起来方便
3. Object spy
对象识别工具,分两种识别方式,Drag方式(拖拽)和Point and Fix 模式(直接点击)识别,当这种方式无法识别对象是可以使用 坐标,Region, OCR 和Text Recognition 方式,后面会说明他们的用法。
4. Region 方式识别对象
Region 是Stores 里面存储图片用的,当然也可以用来识别对象,有点像QTP里面的虚拟对象。
用法步骤:
1) Stores-->regions 添加要识别的对象区域图片, 设置名字
2) 用Region.Find() 获得图片在主窗口的正确位置
Var rectImage = Regions. Find(WinObj, “RegionName” )
3) 通过获得的位置来点击图片位置
WinObj.Click(rectImage.Left + rectImage.Width/2, rectImage.Top + rectImage.Height/2)
5. Optical Character Recognition (OCR)方式识别对象
OCR 方式可以通过字符来识别对象, 当然OCR还可以通过GetText方法获得图片上的文字。
例子代码:
' Get the tested window
Set myWnd = Sys.Process("MyProcess").Window("MyWindowClass", "My Window Caption", 1)
' Get the TextObject object
Set textObj = myWnd.TextObject("My Desired Text")
6. Text Recognition 方式识别对象
Text Recognition 有两种方式:
1) 通过设置project property -->Open applications-->Text Recognition
给Project property 的Text Recognition 添加需要识别的winclass 类型来识别,会自动给添加的类型通过Text Recognition识别相应的对象
例如:winclass 为SysTreeView32 的文件夹左边的树结构无法识别里面的子项, 添加SysTreeView32 到 Text Recognition list, 再次识别的时候就添加了好多TextObject 的对象在树结构下面,例如C:盘
2) 通过代码直接写
WinObj.TextObject(“text”)