51Testing软件测试论坛

标题: QTP WebElement  Exist 功能的问题 [打印本页]

作者: higkoo    时间: 2008-2-22 15:21
标题: QTP WebElement  Exist 功能的问题
这两天写脚本,出现了一些非常郁闷的问题,譬如:
http://bbs.51testing.com/thread-106282-1-1.html  所述。

今天又发现了一个问题:
WebElement 的Exist,在单元格内容较长时查找失败,如下图示意:
作者: higkoo    时间: 2008-2-22 15:34
标题: 正在查……
发现不是长度问题,原因尚待查中。
作者: higkoo    时间: 2008-2-22 15:47
标题: 问题解决
起初是这样:
myFrame.WebElement("outertext:=" & myText & "+" & m-1,"index:=0").exist(1)
把  myText & "+" & m-1 定义为一个变量 a , a = myText & "+" & m-1就可以了

函数里变量太多,习惯尽可能少的定义变量。
作者: higkoo    时间: 2008-2-22 17:13
标题: 验证发现是 “+” 导致
  1. msgbox Browser("name:=测试程序").Page("title:=测试程序").WebTable("index:=1").WebElement("outertext:=分类5-3-1.2").exist(1)
复制代码


打开QTP,打开测试程序页面;在QTPAction中拷入以上代码;运行 结果为 True。
不关闭测试程序页面。

编辑 测试程序.html 源码,将“分类5-3-1.2”修改为“分类5-3-1+2”;代码也相应修改:
WebElement("outertext:=分类5-3-1+2").exist(1)
刷新测试程序页面;运行结果为 False !

反之:
编辑 测试程序.html 源码,将“分类5-3-1+2”修改为“分类5-3-1.2”;代码也相应修改:
WebElement("outertext:=分类5-3-1.2").exist(1)
刷新测试程序页面;运行结果为 True !


有兴趣的朋友可以试试,听下你的看法。
作者: hsjzfling    时间: 2008-2-22 17:42
很正常啊~~+属于正则表达式的特殊字符~~
A plus sign (+) instructs QuickTest to match one or more occurrences of the preceding character.
因此用WebElement("outertext:=分类5-3-1\+2").exist(1)应该也能返回True~
作者: higkoo    时间: 2008-2-23 09:46
标题: 回复 5# hsjzfling  的帖子
原来是这样啊

  难怪难怪    还浪费了N长时间去查这个问题  善在善在……
作者: higkoo    时间: 2008-2-23 09:47
标题: 回复 5# hsjzfling  的帖子
但是即使是正则表达式的特殊字符,但我是用的字符串呀,没有用正则表达式啊

字符串里都不能够含有这些符号吗?
作者: centurystone    时间: 2008-8-4 09:44
我也感觉是QTP的BUG,。。




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