51Testing软件测试论坛
标题:
其实对DataTable的操作可以很灵活……
[打印本页]
作者:
Horus_Ra
时间:
2006-3-22 13:43
标题:
其实对DataTable的操作可以很灵活……
由QTP自动生成的语句是这样的:
DataTable("Col", dtLocalSheet)
DataTable("Col", dtGlobalSheet)
其中,dtLocalSheet就是当前Action的DataTable,dtGlobalSheet就是Global的DataTable,Col是列名
还有很多写法,比如
DataTable("Col", "Action2")
就是读取Action2的Col列。
你完全可以读取另一个Action的DataTable,而不需要跨Action传递变量,使用DataTable比变量更方便,因为结束后能在Result里看到运行时的值
你可以在一个Action里读取另外一个Action的列,但是要注意另外一个Action的当前行
比如你在Action1里读取Action2的某列,如果Action1运行到第二行,你读取的Action2还是第一行的数据,解决办法就是写上这句:
DataTable.GetSheet("Action2").SetCurrentRow(2)
你也可以用GetCurrentRow来获取Action1的行,然后再用SetCurrentRow来保持两个Action的当前行一致:
CurrRow = DataTable.GetSheet("Action1").GetCurrentRow
DataTable.GetSheet("Action2").SetCurrentRow(CurrRow)
还有一种写法:
DataTable(1, "Action2")
这样就是读取Action2的第一列,不管第一列叫什么名字,都能读
这样就很方便,比如:
For i = 1 To 10
MsgBox DataTable(i, "Action2")
Next
这样就能循环读取Action2的1~10列了
同样,表也可以用数字代替:
DataTable(1, 2)
这样就是读取第二个Action表的第一列
[
本帖最后由 Horus_Ra 于 2006-3-22 17:54 编辑
]
作者:
mstiunicon
时间:
2006-3-23 09:49
对DataTable有比较深的了解啊。顶一个
作者:
dirkabc
时间:
2006-3-23 16:06
谢谢!谢谢!太谢谢了!弄好了改天请你吃饭。
作者:
walker1020
时间:
2006-8-29 21:32
好帖!值得收藏!
作者:
小宝2006
时间:
2006-8-31 14:04
哈哈,不错不错
作者:
Alexlj_luo
时间:
2006-9-3 08:22
多谢多谢
作者:
小宝2006
时间:
2006-9-11 17:20
hao
作者:
edision
时间:
2006-10-27 11:01
thank you very much, you have a good view at datatable.
作者:
miniyal
时间:
2006-12-1 13:52
不错,值得收藏~
作者:
you力
时间:
2007-3-5 21:35
好贴~~~已收藏~~终于搞清楚了~
作者:
nan3937
时间:
2007-3-13 17:19
里面有很多用法没试过,等以后公司有qtp了一定要试试看
作者:
abens0426
时间:
2007-3-30 11:35
非常不错的资料,收藏了!谢谢~
作者:
xihong2004
时间:
2007-3-31 21:59
收了,顶了
作者:
Sophie.zhang.cs
时间:
2007-4-16 16:29
恩,受益匪浅!!
作者:
breadtree
时间:
2007-4-18 16:34
顶,UP!
作者:
lucky520
时间:
2007-5-18 09:07
up
作者:
lucky520
时间:
2007-5-18 09:08
up
作者:
jimmy2006.hi
时间:
2007-5-29 11:22
标题:
值得顶一个!好东西!
sdlkfj2 佩服
作者:
ohyo12
时间:
2007-5-29 13:34
thanks
作者:
premiumdue
时间:
2007-5-29 15:20
标题:
回复 #1 Horus_Ra 的帖子
thank you !!
作者:
wish_luckyman
时间:
2007-6-22 17:17
envy
admire
作者:
qicyt1812
时间:
2007-7-31 10:05
不错,收藏ingsdlkfj5
作者:
lin85210
时间:
2007-8-1 09:18
目前还没学到多个ACTION,先略知道些,谢谢分享
QTP关于正则表达式都有哪些应用
作者:
飞天侠
时间:
2007-8-5 15:57
好的,谢谢
作者:
vaguely
时间:
2007-8-7 14:54
thank 2
作者:
vaguely
时间:
2007-8-7 14:54
thank 3
作者:
vaguely
时间:
2007-8-7 14:54
thank 4
作者:
vaguely
时间:
2007-8-7 14:54
thank 5
作者:
wuzhiyongnihao
时间:
2008-2-17 19:12
标题:
回复 1# 的帖子
klasjdfl
作者:
qicyt1812
时间:
2008-2-21 10:18
正在试验中。。。
作者:
xiaofang85
时间:
2008-3-19 17:28
标题:
回复 1# 的帖子
谢谢! 一边动手操作,这样学习起来更快!
作者:
momang
时间:
2008-3-21 10:42
哈哈 好强大
好灵活
收藏
作者:
yqx
时间:
2008-4-15 16:24
http://bbs.51testing.com/thread-110506-1-1.html
可以看下
作者:
chunli29
时间:
2008-5-29 17:43
标题:
太感谢楼主了!!
正需要这个,收藏了!
作者:
cobeehuang
时间:
2008-6-4 22:55
原来参数共享可以这样实现,受用了,THX
作者:
ym_wei
时间:
2008-7-2 15:59
谢谢,又有了进一步的了解
作者:
yabest
时间:
2008-7-2 16:44
还可以这样用! 轻松的遍历每个参数的每行的值,不需要SetCurrentRow!
RowCount = DataTable.GetSheet("SheetName").GetRowCount()
ParamCount = DataTable.GetSheet("SheetName").GetParameterCount()
For ParamIndex = 1 to ParamCount
ParamName = DataTable.GetSheet("SheetName").GetParameter(ParamIndex).Name
For RowIndex = 1 to RowCount
ParamValue = DataTable.GetSheet("SheetName").GetParameter(ParamName).ValueByRow(RowIndex)
Next
Next
[
本帖最后由 yabest 于 2008-7-2 16:45 编辑
]
作者:
fwlikexbx
时间:
2008-10-14 17:57
太NB 了 学习了
作者:
wshyzhywx
时间:
2008-10-14 18:02
非常棒!
作者:
李志智
时间:
2008-12-23 14:06
up up!!!
作者:
moyiyun
时间:
2011-5-9 13:39
学习学习,以后用得着。
作者:
yxd2006
时间:
2011-6-24 14:51
学习了,谢谢分享
作者:
moyiyun
时间:
2011-10-10 14:43
不错,先收藏啦!
作者:
chenliquan
时间:
2011-12-13 11:16
如果要读取Datatable的第一行、第一列怎么写呢?
作者:
Shawn_xiao
时间:
2011-12-26 17:22
收藏了
作者:
406070803
时间:
2012-3-23 13:58
赞
作者:
muyunsihe
时间:
2012-4-25 17:34
收藏了,谢谢
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2