51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1929|回复: 9
打印 上一主题 下一主题

[原创] 为什么循环有时候就不往下继续了?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-5-14 15:36:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Dim i,j
j=Datatable.GetRowCount
For i= 1 to j
Browser("管理系统").Page("管理系统").Frame("mainFrame_detail").WebEdit("WebEdit_5").Set DataTable("departure", dtGlobalSheet)
Browser("管理系统").Page("管理系统").Frame("mainFrame_detail").WebButton("确认").Click
   Datatable.GetSheet("Global").setnextrow

wait 2

Next
Browser("管理系统").Page("管理系统").Frame("mainFrame_detail").WebEdit("WebEdit_5").Set "abc"

为什么这个脚本有的时候就不往下继续执行了。。。就一直重复  set和click
使用   DataTable.SetCurrentRow(i)    也还是没有解决
可是有的时候又可以。。。实在不解!

[ 本帖最后由 ice1216 于 2010-5-28 15:45 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2010-5-28 15:51:05 | 只看该作者
还是不行。。。。求助!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2010-5-25 12:16:33 | 只看该作者

回复 7# 的帖子

RowCount=datatable.GetSheet(dtlocalsheet).GetRowCount
i=0
Do until i>=RowCount
i=i+1
datatable.GetSheet(dtlocalsheet).SetCurrentRow(i)
Browser("***").Page("***").Frame("leftFrame").Link("添加礼品").Click
Browser("***").Page("***").Frame("main").WebEdit("tbName").Set  DataTable("礼品名称",dtlocalsheet)
Browser("***").Page("***").Frame("main").WebList("ddlType").Select DataTable("礼品类型", dtlocalsheet)
Browser("***").Page("***").Frame("main").WebList("ddlKind").Select "#"& DataTable("礼品种类", dtlocalsheet)
Browser("***").Page("***").Frame("main").WebEdit("tbMarketPrice").Set DataTable("市场价格", dtlocalsheet)
Browser("***").Page("***").Frame("main").WebEdit("tbChargeValue").Set DataTable("兑换积分", dtlocalsheet)
Browser("***").Page("***").Frame("main").WebEdit("tbChargeMoneyValue").Set DataTable("兑换现金",dtlocalsheet)
Browser("***").Page("***").Frame("main").WebEdit("tbBalanceValue").Set DataTable("结算价格", dtlocalsheet)
Browser("***").Page("***").Frame("main").WebButton("下一步").Click
Browser("***").Page("***").Frame("main").WebButton("新增").Click
Browser("***").Dialog("Windows Internet Explorer").WinButton("确定").Click
Loop

dtlocalsheet 表示的就是本地表
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2010-5-25 11:28:12 | 只看该作者
没调试一下看?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2010-5-25 11:10:02 | 只看该作者

回复 6# 的帖子

第二种方式我试过了,但是还是会有类似的问题。
请问第一种要如何处理?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2010-5-18 14:40:20 | 只看该作者
对于LZ的问题,我提供两点参考:
1.建议如果要自行控制循环的话,最好不要在全局表中进行,因为全局表默认就是循环所有的
2.Datatable.GetSheet("Global").setnextrow 这个方法我以前也用过,不知道出于什么原因,它并未有效地定位到正确的行,你可以采用另一种方式来实现
Datatable.GetSheet("Global").SetCurrentRow(i),放置在循环一开始的位置
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2010-5-14 16:19:11 | 只看该作者

回复 4# 的帖子

难道从 EXCEL复制数据过去。。。空行也会保留
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2010-5-14 16:12:01 | 只看该作者
可能datatable中有空行存在
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2010-5-14 16:07:47 | 只看该作者

回复 2# 的帖子

MS有。。。不过参数的值都执行过后,就没有值输出了。然后就一直在这两步跳来跳去。。。有的时候跳个4,5次就NEXT了。。。我觉得很诡异
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2010-5-14 16:02:50 | 只看该作者
你确定是只是一直重复WebButton("确认").Click    吗?
Browser("管理系统").Page("管理系统").Frame("mainFrame_detail").WebEdit("WebEdit_5").Set DataTable("departure", dtGlobalSheet)
上面这个语句没有被执行吗?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-9 10:50 , Processed in 0.078099 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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