51Testing软件测试论坛
标题:
关于qtp找不到对象
[打印本页]
作者:
chong_zuo
时间:
2007-3-20 18:53
标题:
关于qtp找不到对象
我录的步骤是这样的
1. 在outlook中新建一封邮件
2. 输入收件人地址
3. 在邮件的subject中输入”fuck”
4. 发送邮件
5. 这个时候我的被测程序会弹出对话框(因为输入fuck这种非法词语了,要拦截)
6. 点对话框中的send。(1.jpg)
录制结束
当我回放的时候,QTP找不到步骤6中的send button,出不能识别对象那个错误
按照帮助文档,我在对象仓库中检查了send button的属性然后又spy了一下(object repository.jpg spy.jpg)
我的问题是:我应该改哪些数据 让qtp能找到send button呢?怎么做呢?
我试过的方法:1.添加send button的属性 regexpwndtitle ,regexpwndclass的值到脚本中
2.在对象识别中,设置成regexpwndtitle ,regexpwndclass,text设置成强制属性
不过都失败了,用方法1,在点send button那步还是出相同的错 用方法2 在 "2. 输入收件人地址"这步就出错了 还是不能识别对象这个错.我觉得这个方法就是 想让qtp强制识别B 而定义了B的属性 结果A却都识别不了了.
ps:.大家可否留下msn或QQ,以方便联系,我的QQ85133238.我刷论坛特别慢,而且白天工作刷网页不太好.(尽管是为了工作)
[
本帖最后由 chong_zuo 于 2007-3-20 19:32 编辑
]
作者:
su27lj
时间:
2007-3-20 19:27
用spy++看一下它的属性
作者:
simonepang
时间:
2007-3-21 14:38
不识别对象哦,那就用虚拟对象或者描述性编程吧
作者:
chong_zuo
时间:
2007-3-21 16:16
标题:
我用过的方法
我用过的方法:
1.修改对象仓库中这个button的属性 我发现 regexpwndtitle,regexpwndclass,text这三个属性值是不变的 所以我把他们设置成"强制属性" 但失败了 因为回放的时候在"输入邮件人地址"这步就过不去了 还是出不能识别对象那个错.我想这是因为 根据那三个强制属性 QTP无法识别 outlook的输入对话框了. 另外我根据spy outlook得到的一些属性值 再个send button对比 找出相同的 和不同的 然后把他们的共性作为强制属性 但还是失败了 这里我试了多中组合 就不一一在词列举了
2.修改脚本 填加 winobject("regexpwndclass : =windowforms10button,regexpwndtitle:=send") 不过还是识别不了
3.填加虚拟对象 这个方法成功了 但我觉得这个不是最好的方法 因为一旦以后的case有跟这个button的位置重复的 那肯定会出错
我觉得方法1和2是可行的 应该是我做的不对 请大家指教 如果觉得发帖不方便的话请加我msn:lhnwxjc@hotmail.com QQ:85133238 欢迎大家
作者:
风过无息
时间:
2007-3-21 18:28
描述性编程的语法是否有点问题:
winobject("regexpwndclass : =windowforms10button,regexpwndtitle:=send")
应该是:
winobject("regexpwndclass : =windowforms10button","regexpwndtitle:=send")
作者:
saintlord
时间:
2007-3-22 11:38
帮顶,关注中
作者:
saintlord
时间:
2007-3-22 11:59
不过我觉得楼主说的1,2两种方法未必可行,QTP不是什么对象都可以识别出来的。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2