51Testing软件测试论坛

标题: 如何捕获viewlink中的内容??? [打印本页]

作者: yourslg    时间: 2006-11-2 16:03
标题: 如何捕获viewlink中的内容???
我使用QTP测试一个WEB页面,该页面上有一个viewlink。在这个viewlink中显示了,共XX行,第X页,共XX页。

我希望能抓出其中的XX行用以和数据库中的记录数进行校验。请问各位高手该数据应该如何抓出来呢???
作者: xiaonan    时间: 2006-11-2 17:45
用GetROProperty去取出相应的属性值,再从数据库中取出数值进行比较
作者: yourslg    时间: 2006-11-2 18:57
版主,能否给个详细点的说明或者例子呢?
我用SPY去抓取“共XX行”是没法抓到的,只能捕获到一个VIEWLINK(“PageInfo”)。

我看以前曾经有帖子用
Public var_GetROProperty
var_GetROProperty = Browser("查询页面").Page("查询页面").WebElement("共 21 条").GetROProperty("innerText")
去获取数据。但我用类似的方法却无法获取。

我的页面层次如下:
Browser(“test”).Page("test123").Frame("ModelFrame").viewLink("PageInfo")。“共XX条”是显示在这个PageInfo中的。

不知道我是否描述清楚,希望大家能给予帮助。

谢谢:)
作者: yourslg    时间: 2006-11-2 19:07
我尝试过如下方法:
Public var_GetROProperty
var_GetROProperty = Browser(“test”).Page("test123").WebElement("共 21 条").GetROProperty("innerText")
去获取数据。QTP报无法找到“共 21 条”这个对象!

我的页面层次如下:
Browser(“test”).Page("test123").Frame("ModelFrame").viewLink("PageInfo")。
作者: 风过无息    时间: 2006-11-3 09:16
用text output value试试呢?
作者: yourslg    时间: 2006-11-3 10:15
text output 无法使用。我选择了“共XX行”后,text output菜单灰话。。。

这次的郁闷不一般啊,各位高手,帮忙分析下。有什么办法可以做到检查呢???

谢谢
作者: walker1020    时间: 2006-11-3 10:16
你先用 Object Spy 看看 值是 “共 21 条” 的是那个属性,另外, 在你说的这个WEB页面上的“共 21 条”这几个字上添加检查点, 看看你写的这个表达式对不对。检查点的Check 前的部分 就是 "共 21 条" 这个控件的表达式。
作者: yourslg    时间: 2006-11-3 11:07
我使用OBJECT SPY查看“共21条”,spy没有抓出含有“共21条”这样的属性值。spy仅捕获到了一个viewlink(“pageinfo”),它没有任何属性值是“共21条”!!

另外,我在“共21条”这几个字上鼠标右键添加检查点时,仅可以添加“standard checkpoint”  "bitmap checkpoint"  "Accessibility Checkpoint"!我采用“standard checkpoint”,添加的表达式为:
Browser(“test”).Page("test123").Frame("ModelFram").WebElement("WebElement").check ...

按照此表达式,脚本改造为:Browser(“test”).Page("test123").Frame("ModelFram").WebElement("共21条").GetROProperty("innerText"),QTP报错,无法找到("共21条")对象!
脚本采用Browser(“test”).Page("test123").Frame("ModelFram").WebElement("WebElement").GetROProperty("innerText")时,QTP不报错,但提取的inner Text为空!!!

继续请求帮助~~~~sdlkfj9
作者: yourslg    时间: 2006-11-3 11:44
我在此描述一下我要测试的内容吧,看各位是否有其他的办法来解决这个问题。
后台数据库为INFORMIX。PS:能否给个连接INFORMIX数据库的脚本?我在window端采用informix 的csdk进行连接。已配置了ODBC接口。

检测内容:查询出的数据是否与数据库内容一致。

主要查询操作步骤:
1、输入查询号码
2、选择需查询的项目(市话清单、长话清单、短信清单、区间通话详单...)
3、选择帐务日期
4、点击“查询清单”

说明:在第二步中,选择的项目是可以多选的。每个选项都将在最后的查询结果集中分页显示,但每个选项将生成一个表格来独立显示。
显示结果如下图:



作者: yourslg    时间: 2006-11-3 11:45
各位看看,能否有什么好的建议???sdlkfj4
作者: yourslg    时间: 2006-11-3 16:00
现在这个问题似乎应该已经解决了,在向客户要到程序源代码后。分析代码,发现这个pageinfo的document对象是通过如下方法传递数据进去的:
var obj=new Object()
obj.pageSize = g_BillPageSize;
obj.recCount = recCount;
obj.queryFunName = "initQueryBillTree";
parent.document.all("billPageInfo").loadInfoData(obj);

从这段代码估计,通过
Browser(“test”).Page("test123").Frame("ModelFrame").viewLink("ageInfo").object.document.all("billPageInfo").reccount
可以获取到查询出的记录数。

通过测试,的确可行。

谢谢大家的回复!sdlkfj6
作者: walker1020    时间: 2006-11-3 16:14
谢谢  yourslg 的回复! 通过你的回复,我也学到了一点:如果 用 QTP 的Object Spy找不到对象,分析一下源代码也是一种不错的方法。




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