51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3237|回复: 6
打印 上一主题 下一主题

[原创] qtp取值,在多个嵌套table中取页面的值

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-2-27 17:28:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如图2所示, 需要将业务编号的值取出来,但这是一个多个嵌套table页,源码见附件,用qtp对象spy取的的内容如图1所示

如何取页面上业务编号的值?即需要取出“20090003265”

请教请教请教请教请教!!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-2-27 17:51:10 | 只看该作者
其实,右键你要取出的业务编号值的地方,然后插入output就可以解决的,不过这个方法就使用于你仅仅想取这个地方的值的情况,要不就用正则表达式,把page的outertext取出来,然后匹配,不过,我觉得右键的方法应该对你来说是适用的,试试嘛,格式:
Dim myOutput
myOutput = ‘插入输出值的语句

最好在添加输出值地时候看下上面的说明,如果我猜的没错的话,应该像这样:输出在业务编号后面的数字。。

我遇到过这种情况,当时我就是把一个page的outertext全部取出来,然后匹配的,后来看了别人这样弄,我才觉得很傻X
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-2-27 21:56:48 | 只看该作者
可以把最底层的 WebTable:流程信息 加入到对象库中。
然后用Browser().Page().Frame().WebTable().GetCellData(2,2),这里是直接得到第几行第几列的值。如果你不知道他是第几行第几列,可以用下面这个方法执行一下看看内容。
row=Browser().Page().Frame().WebTable().RowCount
for i=1 to row
    col=Browser().Page().Frame().WebTable().ColumnCount(i)
    for j=1 to col
         msgbox Browser().Page().Frame().WebTable().GetCellData(i,j) & "----" & i & "行" & j & "列"
    next
next
忘了说了,Browser()括号里的我没写,你应该知道写什么。如果觉得上面一长串写着麻烦,可以先set tableA=Browser().Page().Frame().WebTable(),然后后面都用tableA去代表那一长串的内容,不过这样就没法用.把后面的方法自动点出来。

output也可以解决,不过要看你需要的值的前后文字内容是否固定,如果不固定就比较麻烦,不如直接去表格中的内容。

[ 本帖最后由 shotstar 于 2009-2-27 21:58 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2009-3-2 09:31:07 | 只看该作者
提示不存在webtable这个东东
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-3-2 10:03:59 | 只看该作者

请问复,谢谢!

请问
1、dim values
values = Browser("").Page("").Frame("Frame_5").WebElement("WebTable").Output CheckPoint("WebTable")
用上面这样实现时,提示语法错
2、象下面这个语句,如何把值取出来放在一个变量中?
Browser("").Page("").WebElement("WebTable").Output CheckPoint("WebTable")
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2009-3-2 10:06:12 | 只看该作者

回复 3# 的帖子

是固定的,前面是业务编号,后面是操作员,这几个字是固定的
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2009-3-2 11:44:42 | 只看该作者

谢谢大家,取到值了

谢谢大家,取到值了
Browser("欢迎使用进出口银行新一代信贷管理系统").Page("欢迎使用进出口银行新一代信贷管理系统_2").Frame("Frame_5").Output CheckPoint("Frame_2")
msgbox DataTable.GetSheet("Action1").GetParameter("values")
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-27 04:35 , Processed in 0.072315 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表