QTP对象识别机制
QTP对象识别机制中,为什么它默认不按ID(Winddows ID/Debug ID/ID etc)来识别对象,而是text?附图中: winbutton强制属性
1:nativeclass 我发现在一般windows/.NET产品都是 “Button”这个值,
2: text,"YES", "NO","确认"等。
Windows Id为附属属性。
这样,实际默认情况下,QTP就是以Text来区别两个button。
而Selenuim默认依靠ID来识别对象,这样不管Button text 是YES,还是“确定”,对测试脚本基本没有影响。
这样来看QTP的这套机制已经落伍了。
我知道可以把ID改成强制属性,但是分发的别的没有修改的QTP环境上,就会有问题,
为何它默认没有采用ID的方式? 有木有人回复啊? 你自己可以添加其他的属性,至于ID 你可以通过DOM解析 楼主不是你理解的QTP的机制有问题,只能说你用的还不到家,解决办法注意3楼 额。。。。。不能因为这个就说qtp落伍哦,每个工具有其自己的特点和识别机制 LZ你用selenium测试window/.net看看……
对于很多的app来说,window id就是个随机分配的动态值,这样的程序中你要依赖window id来识别控件会抓狂的。想无视文本也容易,牺牲下易读性和部分可维护性,全用顺序标识符来识别好了。
目前来看,QTP的强大是不容亵渎的……
页:
[1]