QTP的对象识别技术

Summer ·
更新时间:2024-11-11
· 719 次阅读

  在我们在做自动化的时候,经常会遇到的一种情况是,在同一个页面里, 出现相同类型和名称的对象时,一般需要依赖额外的属性来区分这些相同的对象。   在QTP 里共有3类这样的顺序标识。   1. 顺序标识(Ordinal Indentifiers):[location Index CreationTime]   其中CreationTime 仅适用于Browser对象   这些顺序标识一般用在描述性编程里面 例如: '采用Location 是 按对象位置的从上到下的 Browser("").Page("").WebEdit("name:=qtp","location:=2").Set "Eric_1991" '采用Index 是按对象的位置从左到右的 Browser("").Page("").WebEdit("name:=qtp","index:=3").Set "Eric_1991" 'CreationTime 顺序标识仅能用在Browse对象, 按浏览器的进程产生的时间先后顺序排列 SystemUtil.Run "iexplore.exe", "http://www.HP.com" '这个时候CreationTime 的值是0 SystemUtil.Run "iexplore.exe", "http://www.baidu.com"  '这个时候CreationTiem的值是1 Browser("creationtime:=").Highlight '高亮显示的是HP.com的浏览器 Browser("creationtime:=").Highlight '高亮显示的是baidu.com的浏览器'   QTP 在碰到对象识别问题的时候,会尝试应用智能识别(Smart Identification)。 如果智能识别能定位到对象,那么脚本继续运行,否则会提示错误   在 对象的智能识别设置  Base Filter Properties  里会进行第一乱的 对象属性的匹配,如果Base Filter Properties 里面的属性不能够定位到该对象,那么QTP会到该对象的Optional Filter Properties 里面的属性进行逐个去匹配 ,直到能定位到该对象位置, 否则会发生对象找不到的错误



qtp 对象

需要 登录 后方可回复, 如果你还没有账号请 注册新账号