51Testing软件测试论坛

标题: 为什么日志没有写入 [打印本页]

作者: amibaren    时间: 2006-2-20 11:58
标题: 为什么日志没有写入
我在做有关一个登录测试都脚本中,加入了对登录失败情况下根据弹出窗口判断失败原因,并且将原因写入日志都脚本,但是回放都时候发现日志没有写入,以下是脚本片断和当时都截图

Sub Main
    Dim WResult As Integer
    Dim winlabel as String
    'Initially Recorded: 2006-2-20  11:24:35
    'Script Name: window log
   
   
    WResult = SQAGetProperty ("Window,Class=#32770;Level=10;\;Type=Label;ObjectIndex=1", "Text", winlabel)
   
    select case winlabel
   
    case "链接服务器失败"
    SQALogMessage sqafail, "链接服务器失败", ""
   
    case "密码错误!"
    SQALogMessage sqafail, "密码错误", ""
   
    End select
End Sub
作者: hemy    时间: 2006-2-20 12:18
你可以自己调试一下,把winlabel的值弹出来看看,可能是因为winlabel的值不是"密码错误!"和"链接服务器失败"
作者: amibaren    时间: 2006-2-20 12:53
我用msgbox调出winlabel,结果是空的,还有可能是哪里有问题呢,明明属性里面显示有个值的,为什么就不行
作者: hemy    时间: 2006-2-20 13:08
可能是你对象写错了,"Window,Class=#32770;Level=10;\;Type=Label;ObjectIndex=1",你改为"Type=Window;Class=#32770;\;Type=Label;ObjectIndex=1"试试。
作者: amibaren    时间: 2006-2-20 13:28
我也试了,还是不行啊。
作者: hemy    时间: 2006-2-20 13:50
那"\;Type=Window;Class=#32770;\;Type=Label;ObjectIndex=1"呢?我想问题应该出现在对象的描述上,你试试用sqafindobject,如果找不到对象,就说明对象描述不对。
作者: amibaren    时间: 2006-2-20 14:27
Sub Main

    Dim Result As Integer


   Window SetContext, "Class=#32770;Level=10;\;Type=Label;ObjectIndex=1", ""
   Result=SQAFindObject("Type=label;Text=密码错误!")


  msgbox Result
   
End Sub

结果是0,应该就是找到对象了,但是日志里面还是没有信息。有人知道问题出做哪里吗?

[ 本帖最后由 amibaren 于 2006-2-20 14:29 编辑 ]
作者: hemy    时间: 2006-2-20 14:40
看不懂,Type=Label;ObjectIndex=1到底是window 还是label?
……
Window SetContext, "Class=#32770;Level=10", ""
WResult = SQAGetProperty ("Type=Label;ObjectIndex=1", "Text", winlabel)
……
作者: amibaren    时间: 2006-2-20 15:05
改成

    Window SetContext, "Class=#32770;Level=10", ""
    WResult = SQAGetProperty ("Type=Label;ObjectIndex=1", "Text", winlabel)

就ok了,奇怪。可能需要设定一下上下文,直接在SQAGetProperty设定好像不行

[ 本帖最后由 amibaren 于 2006-2-20 15:12 编辑 ]
作者: amibaren    时间: 2006-2-20 15:06
多谢hemy啦!




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