51Testing软件测试论坛

标题: 【重要】很多人都在问,QTP数值参数化后,如何循环其表中数据呢? [打印本页]

作者: 唐伯虎点蚊香    时间: 2010-10-20 20:14
标题: 【重要】很多人都在问,QTP数值参数化后,如何循环其表中数据呢?
在工作中遇上了这个问题,想从网上寻找答案,但是发现都不行。

比如我想让一下数据循环100次。
表中数据:
userid   passwd
0001      123
0002      235
0005      256

效果如:
(0001,123)
(0002,235)
(0005 ,256)为1次循环,接着做第二次循环。。。。

应该怎么处理呢,很多同仁都问过这个问题,
但是一直无法从网上信息得到答案,在此特请高手大侠们指点一下。
在下感激不尽。
作者: cswalkman    时间: 2010-10-21 09:09
表格里放100条数据,或在代码里for100次
作者: 唐伯虎点蚊香    时间: 2010-10-21 10:04
沙发,表格里放100条是不现实也不良好的,要是数据有100000呢?也放这么多?
在代码里循环100次,却是表格里的每一行循环100次,再循环第二行。问题说的是表格里的数据执行所有以后,再循环第二次。

如使用一下循环,是不行的。达不到效果。
For Iterator = 1 To 100 Step 1
        Browser("离线下载-登录").Page("离线下载-登录").WebEdit("u").Set DataTable("userid", dtGlobalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebEdit("WebEdit").SetSecure DataTable("passwd", dtGlobalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebButton("登 录").Click
        Browser("离线下载-登录").Page("离线下载").Link("退出").Click
Next
作者: mklodoss    时间: 2010-10-21 14:37
有个设置的地方,默认是循环是开启的。。
作者: Doppelganger    时间: 2010-10-22 17:22
默认为 Action1 本地表:

For Iterator = 1 To datatable.GetSheet("Action1").GetRowCount  Step 1
        Browser("离线下载-登录").Page("离线下载-登录").WebEdit("u").Set DataTable("userid", dtGlobalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebEdit("WebEdit").SetSecure DataTable("passwd", dtGlobalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebButton("登 录").Click
datatable.GetSheet("Action1").SetNextRow
Next
作者: cathychu    时间: 2010-10-22 17:34
Doppelganger is right
you can also use "run on all rows"
作者: 唐伯虎点蚊香    时间: 2010-10-25 10:34
Doppelganger  你的方法应该是可以的,但是我个人觉得实用ation调用的方法比较好些,如:
Ation1中:
Browser("离线下载-登录").Page("离线下载-登录").WebEdit("u").Set DataTable("userid", dtLocalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebEdit("WebEdit").SetSecure DataTable("passwd2", dtLocalSheet)
        Browser("离线下载-登录").Page("离线下载-登录").WebButton("登 录").Click
        Browser("离线下载-登录").Page("离线下载").Link("退出").Click

'Action2,在Action2中调用Acion1
For Iterator = 1 To 1000 Step 1
        RunAction "Action1", allIterations
Next

这样的话,Action1还可以被多个action重复的调用,大家觉得呢?




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