51Testing软件测试论坛
标题:
qtp录制java写的客户端程序,有一个javawindows对象找不到唯一属性
[打印本页]
作者:
outoflife_2006
时间:
2017-2-8 09:10
标题:
qtp录制java写的客户端程序,有一个javawindows对象找不到唯一属性
本帖最后由 outoflife_2006 于 2017-2-8 09:21 编辑
qtp录制java程序识别到javawindow对象,名称为Shell,无法确认其唯一属性值,页面有很多个shell,第一个对象是shell,第二个是shell_1,第三个是shell_2...
想问一下各位大侠,qtp录制的对象都一定有一个唯一的属性吗?
我尝试过正则表达式,用描述性变成语言不行。
FormName="Shell*"
JavaWindow("ABIS Expert Studio").JavaWindow("tagname:="&FormName).JavaObject("tagname:=WindowMenuItem","index:=4").Click "57","7"
也尝试过用tagname属性和index属性,也不行
JavaWindow("ABIS Expert Studio").JavaWindow("tagname:=Shell","index:=0").JavaObject("tagname:=WindowMenuItem","index:=4").Click "57","7"
还尝试过智能识别,也不行
尝试模拟录制和低级别录制,都不行
目前想法是跟研发讨论一下,看能不能加一个唯一属性在代码里,这样录制的时候是不是就能有唯一属性了?
[attach]104340[/attach]
下拉菜单Shell
下拉选择框Shell
弹出窗体Shell
[attach]104338[/attach]
Shell属性,添加的属性都是空的,不明白为什么
[attach]104339[/attach]
Shell_2属性,可添加的属性里找不到能唯一确认的
file:///C:/Users/Administrator/AppData/Local/YNote/data/sufen9946@163.com/58ce820b6fcd4402a0510176b8b5038b/clipboard.png
作者:
jingzizx
时间:
2017-2-9 14:36
如果为了区分不同对象,道理上肯定有属性不同的地方,QTP才能识别的
作者:
outoflife_2006
时间:
2017-2-10 13:52
jingzizx 发表于 2017-2-9 14:36
如果为了区分不同对象,道理上肯定有属性不同的地方,QTP才能识别的
这些Shell对象不是页面固定的,比如下拉菜单,都是点击了菜单项才会出现的,qtp第一次识别Shell对象,他认为就只有这一个Shell,通过名字就可以唯一区分,所以也不给index.等到下次,在点击其他菜单,出现下拉菜单的时候,qtp才开始给index值,所以像这种非页面固定元素的识别,版主有没有什么好的建议?
我现在跟研发商量的是,他在程序里帮我家一个ID,每个动态生成的对象ID都不同,目前还不知道程序的这个ID,qtp能不能捕捉成这个对象的属性.
非常感谢版主的回复,祝17年一切顺利!!!
作者:
sunnysnow416
时间:
2017-2-15 10:07
可以使用描述性编程
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2