51Testing软件测试论坛

标题: 取不到Global表数据 [打印本页]

作者: zzfhncn    时间: 2008-7-4 18:15
标题: 取不到Global表数据
有Action1从Global表里Username,Password  2项里取得数据进行注册操作,注册成功后,Action3中有检查点,验证注册的Username和Password是否是刚才注册的用户。检查点也是从Global表取数据,但是运行时取不到数据。这是什么原因。

[ 本帖最后由 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
求高手解答啊?




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