唐伯虎点蚊香 发表于 2010-10-20 20:14:03

【重要】很多人都在问,QTP数值参数化后,如何循环其表中数据呢?

在工作中遇上了这个问题,想从网上寻找答案,但是发现都不行。

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

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

应该怎么处理呢,很多同仁都问过这个问题,
但是一直无法从网上信息得到答案,在此特请高手大侠们指点一下。
在下感激不尽。

cswalkman 发表于 2010-10-21 09:09:04

表格里放100条数据,或在代码里for100次

唐伯虎点蚊香 发表于 2010-10-21 10:04:08

沙发,表格里放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:30

有个设置的地方,默认是循环是开启的。。

Doppelganger 发表于 2010-10-22 17:22:56

默认为 Action1 本地表:

For Iterator = 1 To datatable.GetSheet("Action1").GetRowCountStep 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:18

Doppelganger is right
you can also use "run on all rows"

唐伯虎点蚊香 发表于 2010-10-25 10:34:43

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重复的调用,大家觉得呢?
页: [1]
查看完整版本: 【重要】很多人都在问,QTP数值参数化后,如何循环其表中数据呢?