QTP的对象识别技术-阿里云开发者社区

开发者社区> 云计算> 正文
登录阅读全文

QTP的对象识别技术

简介:
在我们在做自动化的时候,经常会遇到的一种情况就是,在同一个页面里, 出现相同类型和名称的对象时,一般需要依赖额外的属性来区分这些相同的对象。
  在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 里面的属性进行逐个去匹配 ,直到能定位到该对象位置, 否则就会发生对象找不到的错误
最新内容请见作者的GitHub页:http://qaseven.github.io/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: