51Testing软件测试论坛

标题: frame的title变化,qtp无法识别 [打印本页]

作者: moshuang    时间: 2012-11-27 17:18
标题: frame的title变化,qtp无法识别
qtp我本身设置的对frame组件的识别是用title的,然后发现这个frame的title是变化的,所以用了正则表达式来识别。大家看一看为什么结果是warning?
[attach]82540[/attach][attach]82541[/attach]
作者: joykao    时间: 2012-11-27 17:58
开正则
作者: 泰然    时间: 2012-11-27 21:13
这里报warning的原因是对象不匹配,但智能识别成功。凡是不匹配但智能识别成功的都会抛出warning。

你可以检查2个地方,一个是Object Identification中web控件部分的Frame控件,有个enable smart identification允许智能识别的checkbox,是选中状态;一个是设置菜单中run页里有个Disable smart identification during run session运行中禁止智能识别的checkbox,是未选中状态。

这里表示你的frame属性没写好,导致对象不匹配,但智能识别成功。frame属性不对的主要原因,我估计还是你的正则表达式没用好。^\d{n,}$表示n位数字,你这里写成^\d{0,}$感觉怪怪的,要至少0位数字?我没试这么写实际表示什么,但我估计你的意思是“展现交叉报表”后面可能还有数字,我觉得(\d)?更好,或者范围更宽些.*。
作者: moshuang    时间: 2012-11-28 13:01
回复 3# 泰然


    可以检查2个地方,一个是Object Identification中web控件部分的Frame控件,有个enable smart identification允许智能识别的checkbox,是选中状态;一个是设置菜单中run页里有个Disable smart identification during run session运行中禁止智能识别的checkbox,是未选中状态。
你的意思是把这两个分别改成未选中和选中吗?我改成了.*的匹配就通过了,只是不明白为什么至少n个或者五位数是不对的。
作者: 泰然    时间: 2012-11-28 13:08
不是的,只是告诉你这2个,前一个选中后一个未选中,导致了你的frame可以智能识别。如果改掉,就禁止智能识别,你的脚本就会报错(因为对象不匹配),而不是告警。

为什么.*正确,而你的写法不对,就要检查被测的程序了,比如“展现交叉报表”后面数字可能还有个空格或者回车符或者“.”?
作者: moshuang    时间: 2012-11-28 15:42
回复 5# 泰然


    这样写是对的“展现报表设置\.*”或者“展现报表设置\d{0,}”




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2