不谋万世者,不足谋一时;不谋全局者,不足谋一域。君子敏于事而慎于言 新浪微薄:土司阿哈

QTP的CheckPoint如何定位Text发生变化的对象

上一篇 / 下一篇  2008-07-29 23:10:12 / 个人分类:qtp

1208328177
  • 自动化测试:
  • 测试文档:
 
我们使用QTP录制Web测试脚本之后,往往需要在Web页面中增加一些检查点(CheckPoint)或者输出值(Output value)
 
在添加检查点的时候,我们是基于刚刚录制好的脚本,但是问题出现了:脚本中的页面里面的字符都是一个确定的值,而回放的时候这些值会发生改变,那么QTP就有可能找不到检查点和输出值的确切位置!
 
举个例子,我们需要用一个脚本遍历全国的重要城市的相关信息,在录制脚本的时候我们检查的是合肥的信息,然后我们把“城市名称”定义为参数,把各个城市作为参数的值,再执行脚本,并且将各个城市的信息作为检查点。如果我们将检查点设置在“合肥:....”这样的WebElement上面,回放时如果是上海市,那么QTP就有可能会出现“对象无法定位”这样的错误。
 
下面说一个解决办法。
 
多数的web页面都用html标准的table来管理页面元素的位置,一个table分为若干列(column)和若干行(Row)。如果回放脚本的时候,页面中的table信息不变,并且table中每个cell的位置也比较稳定,那么我们就可以根据table的“坐标”来增加检查点和输出值,而不是针对每个cell
 
首先,在需要添加检查点的table上面右击,选择“增加标准检查点”
然后,选择你需要的webTable。这里是重点,不要选择webElement。如果页面中有多个table,那么就逐一的点击它们,然后观察后面预览视图中的紫色方框的变化,定位到你需要的那个table上。
 
然后,点击确定,来到检查点的设置页面。
 
在检查点设置页面,我们可以看到table的结构,在这里我们选择哪些“坐标”是我们需要的,如果需要检查,就打个勾。注意,检查点同样可以设置成静态值、参数两种模式。
 
这时我们再回放脚本,先前出现的错误就消失了。
 
同样道理,输出值也可以这样来设置。
以上内容转载于网络

TAG: qtp

 

评分:0

我来说两句

Open Toolbar