【求助】关于QTP循环问题【修改】
【求助】关于QTP循环问题谢谢你看此帖:
在QTP中,我用了下面IF循环读取Global表中的数据,当判断我定义的“行政区”数据是不是为空,为空时就退出循环,这时候表中有两个数据。
Dim xzq
xzq=DataTable("行政区", dtGlobalSheet)
If ( xzq = "" )Then
Exittest
End If
然后我又用FOR循环循环读入Action1表的数据。上面和下面的循环的关系是:当上面输入第一条数据时候,下面For循环,循环一次,输入数据
但问题就来了,上面IF循环输入第二条数据了,下面又循环了,且输入数据一样,我要的是当上面IF循环输入第二条的时候,下面的FOR循环输入的内容不一样。当然,我希望能读入Action2的数据,来解决
Dim b,i
b=datatable.GetSheet(dtLocalSheet).getrowcount
For i=1to b
×××××××
datatable.getSheet(dtLocalSheet).SetNextRow
Next
你能帮忙吗?怎么样才可以读入Action2表中的数据,来使IF循环后的数据不一样
如果我说的不明白的。我可以再附代码给你看看
------------------------------------------------------------------------
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_4").Check CheckPoint("成都市房屋专项维修资金系统v1.0_4")
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_4").WebEdit("ID___Login$txtUserName").Set "test1"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_4").WebEdit("ID___Login$txtPassWord").SetSecure "46f32b5c1a26858ee9ca83ad"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_4").Image("ID___Login$btnLogin").Click 11,19
'定义物业区域,当新建物业区域是,判断【行政区】是否有数据,当为空的时候就退出
Dim xzq
xzq=DataTable("行政区", dtGlobalSheet)
If ( xzq = "" )Then
Exittest
End If
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("TopFrame").WebElement("二手房管理").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("LeftFrame").Check CheckPoint("LeftFrame")
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("LeftFrame").WebElement("二手房信息采集").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("新建物业区域信息").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldEstateAreaAdd$OldEstateA").Select DataTable("行政区", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldEstateAreaAdd$OldEstateA_2").Select DataTable("街道办事处", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaAdd$OldEstateA").Set DataTable("物业区域名称", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaAdd$OldEstateA_2").Set DataTable("街道", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaAdd$OldEstateA_3").Set DataTable("号", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaAdd$OldEstateA_4").Set DataTable("附号", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaAdd$OldEstateA_5").Set DataTable("备注", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("保存").Click
Browser("成都市房屋专项维修资金系统v1.0").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldEstateAreaList$drpTbl").Select "物业区域地址"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldEstateAreaList$txtWhere").Set DataTable("街道", dtGlobalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("WebButton").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("monthes").Select "一月"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").Link("3").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("WebButton_2").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("years").Select "2009"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("monthes_2").Select "六月"
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").Link("28").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("查询").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").Link("分户").Click
Dim b,i
b=datatable.GetSheet(dtLocalSheet).getrowcount
For i=1to b
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("新建分户信息").Click
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtMo").Set DataTable("单元号", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtFl").Set DataTable("楼层号", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtRo").Set DataTable("室号", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtAd").Set DataTable("详细地址", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtBu").Set DataTable("建筑面积", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldHouseAdd$OldHouse1$dplRo").Select DataTable("房屋类型", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldHouseAdd$OldHouse1$dplRo_2").Select DataTable("房屋结构", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldHouseAdd$OldHouse1$dplRo_3").Select "普通住宅"
Browser("成都市房屋专项维修都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtOw").Set DataTable("业主姓名", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebList("ID_OldHouseAdd$OldHouse1$ddlPa").Select DataTable("证件类型", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtPa").Set DataTable("证件号码", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$tbxDC").Set DataTable("购房金额", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebEdit("ID_OldHouseAdd$OldHouse1$txtRe").Set DataTable("备注", dtLocalSheet)
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("保存").Click
Browser("成都市房屋专项维修资金系统v1.0").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
datatable.getSheet(dtLocalSheet).SetNextRow
Next
Browser("成都市房屋专项维修资金系统v1.0").Page("成都市房屋专项维修资金系统v1.0_5").Frame("MainFrame").WebButton("提交审核").Click
[ 本帖最后由 walker1020 于 2007-9-22 14:44 编辑 ] 当然,也可以读取Action1表的行数来解决,但我就是不知道sdlkfj9 呵呵,大哥我实在没看明白你写什么,把代码贴出来我看一下就能明白,不用文字。。。我在努力的研读你的文字。。。 能不能给点图示解说一下啊?你这个语言表达的不直观 好了。。。 好了 就把问题的原因和解决方案告诉大家
怎么都是问问题的时候大叔大姐跪求急求的
自己搞定了 就不说了
典型的卸磨杀驴 。。。。。。
他这个代码我看了就没有什么问题。
不知道哪儿错了。
'datatable("col",dtGlobalsheet)
for i=1 to datatable.getsheet("Action2").getrowcount
'datatable("col",dtlocalsheet)
'or datatable(columnnum,dtlocalsheet)
'datatable.setnextrow
next
[ 本帖最后由 jackymail 于 2007-9-21 17:00 编辑 ] 不是很理解楼主说的问题,如果是是想把第二部分套在第一部份中进行循环,那第一个可以用while(),然后把第二部分放到它里面进行控制.如果不是这种意思,只是单纯想控制第二部分的循环,那直接在QTP上设置吧. 这样恐怕不行。action2里面的数据循环不到。
原帖由 xinxiachen 于 2007-9-21 17:00 发表 http://bbs.51testing.com/images/common/back.gif
不是很理解楼主说的问题,如果是是想把第二部分套在第一部份中进行循环,那第一个可以用while(),然后把第二部分放到它里面进行控制.如果不是这种意思,只是单纯想控制第二部分的循环,那直接在QTP上设置吧.
回复 1# 的帖子
你可以在action1添加output,然后Action2的input直接引用action1的output1)给action1添加输出值:右键Action1,选Action Properties,在Output Parameters中添加参数OutAction1,点OK
2)给action2添加输入值:右键Action2,选Action Properties,在Input Parameters中添加参数InAction2,点OK
3)将Action1的输出OutAction1,传递给Action2的输入InAction2:右键Action2,选Action Call Properties,弹出Action Call Properties窗口;选中InAction2的Value,弹出Value Configuration Options窗口;在Parameter中共有四项可供选择,选择Test/Action parameter,在Output from previous call(s)中的Action选择Action1,Parameter中选择OutAction1;表示Action2中的参数InAction2,是由Action1中的参数OutAction1传递来的。
[ 本帖最后由 feiyunkai 于 2009-9-23 13:13 编辑 ]
页:
[1]