[ 本帖最后由 zzfhncn 于 2008-7-4 20:24 编辑 ]作者: 陈能技 时间: 2008-7-4 22:49
把脚本帖出来看看吧作者: 小孩 时间: 2008-7-5 14:24
恩恩,先把脚本发上来,要不我们怎么知道问题出在哪里作者: zte_boy 时间: 2008-7-5 15:39
呵呵,去医院看病却不告诉医生症状作者: zzfhncn 时间: 2008-7-6 01:42
Browser("注册账号").Sync
Browser("注册账号").Page("注册账号").Sync
Dim countNum
countNum = DataTable.GetSheet("Action1_1").GetRowCount
for j=1 to countNum
DataTable.SetCurrentRow(j)
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("p_Text", dtLocalSheet)
Browser("注册账号").Page("注册账号").Image("Regsit_bt2").Click
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Check CheckPoint("txtECardNum")
next
for j=1 to countNum
DataTable.SetCurrentRow(j)
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("p_Text", dtLocalSheet)
Browser("注册账号").Page("注册账号").Image("btnConfirm").Click
if Browser("注册账号").Dialog("Microsoft Internet Explorer").Exist then
if Browser("注册账号").Dialog("Microsoft Internet Explorer").Static("提示信息").GetROProperty("Text") = datatable("promptmsg1", dtLocalSheet) then
Browser("注册账号").Dialog("Microsoft Internet Explorer").Close
else
reporter.ReportEvent micFail,"提示信息出错","提示信息内容不符合需求。"
Browser("注册账号").Dialog("Microsoft Internet Explorer").Close
end if
else
reporter.ReportEvent micFail,"提示信息出错","没有弹出提示信息"
end if
next
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("有效的体验卡", dtGlobalSheet)
Browser("注册账号").Page("注册账号").Image("btnConfirm").Click
代码如上,Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("有效的体验卡", dtGlobalSheet) 这个就没有从Global表中取到数据,导致不能进入下一步操作。
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("有效的体验卡", dtGlobalSheet)
Browser("注册账号").Page("注册账号").Image("btnConfirm").Click
单独放到一个Action里同样取不到数据。
这个取不到数据的问题同样存在于后面的Action中,导致检查点取不到Global表里数据,而检查失败。作者: zzfhncn 时间: 2008-7-6 01:45
后来写代码如下,才从Global表中正确取到了数据。这是什么原因呢?
Dim countNum2
countNum2 = DataTable.GetSheet("Global").GetRowCount
For i=1 to countNum2
If x> countNum2 Then
exit for
else
DataTable.SetCurrentRow(i)
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("有效的体验卡", dtGlobalSheet)
Browser("注册账号").Page("注册账号").Image("btnConfirm").Click
RunAction "Action2", oneIteration
RunAction "Action3", oneIteration
End If
x=x+1
next作者: 陈能技 时间: 2008-7-6 16:36
是不是把Test设置为 Run OneItertation only 了?
另外修改后的脚本其实也可以改成这样:
Dim countNum2
countNum2 = DataTable.GetSheet("Global").GetRowCount
For i=0 to countNum2-1
Browser("注册账号").Page("注册账号").WebEdit("txtECardNum").Set DataTable("有效的体验卡", dtGlobalSheet)
Browser("注册账号").Page("注册账号").Image("btnConfirm").Click
RunAction "Action2", oneIteration
RunAction "Action3", oneIteration
DataTable.SetNextRow
next作者: zzfhncn 时间: 2008-7-7 09:49
的确是把Action1设置为 Run OneItertation only 了。是不是这样设置就取不到Global表的数据了?
后面的Action2,Action3设置成Run on all rows, 检查点也是取不到Global表的数据。作者: zzfhncn 时间: 2008-7-8 12:36
求高手解答啊?