expect88 发表于 2011-3-15 16:17:49

QTP自带订票,登录问题。

刚学QTP 不知道哪问题了。 向请教几个问题。
脚本如下:
用户名和密码错误的时候,脚本可以正常运行。能达到预期效果。
但是当 用户名密码正确的时候,无法执行到最后一个else中的语句。
Else
      MsgBox "123"
      Reporter.ReportEvent micPass, "成功","登录成功"
      Window("text:=航班预订").Close
      msgbox "123"
End If

就是无法执行到这里面的语句。
请指点


Dim resultValue
Dim expectValue
Dim i

'For i = 1 To DataTable.GetSheet("Action1").GetRowCount

SystemUtil.Run "C:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe"

Dialog("登录").WinEdit("代理名称:").Set "mercury"      'DataTable("username",dtLocalSheet)

Dialog("登录").WinEdit("密码:").SetSecure "mercury"      'DataTable("password",dtLocalSheet)
Dialog("登录").WinButton("确定").Click

resultValue = Dialog("登录").Dialog("航班预订").Static("window id:=65535").GetROProperty("text")

expectValue = DataTable("expectValue",dtLocalSheet)

DataTable.Value("outputValue",dtLocalSheet) = resultValue

If Dialog("登录").Dialog("航班预订").Exist Then

      If resultValue = expectValue Then
                Reporter.ReportEvent micPass,"失败","预期结果为:" & expectValue & " 实际结果为:" & resultValue
      Else
                Reporter.ReportEvent micFail,"失败","预期结果为:" & expectValue & " 实际结果为:" & resultValue      
      End If

      Dialog("登录").Dialog("航班预订").WinButton("确定").Click
      Dialog("登录").WinButton("取消").Click
      
Else
      MsgBox "123"
      Reporter.ReportEvent micPass, "成功","登录成功"
      Window("text:=航班预订").Close
      msgbox "123"
End If

      'DataTable.GetSheet("Action1").SetNextRow
      
'Next

expect88 发表于 2011-3-15 16:20:14

对象库如下:

风雪夜归人 发表于 2011-3-15 17:54:29

是不是不管何种情况,航班预定都存在? 建议一试

另外, 请在Exist后面加一个超时的时间,比如Exist(5)这个是良好的习惯

ct_051 发表于 2011-3-15 20:40:22

用户名和密码正确的时候,Dialog("登录").Dialog("航班预订").Exist=true
直接进入
If resultValue = expectValue Then
                Reporter.ReportEvent micPass,"失败","预期结果为:" & expectValue & " 实际结果为:" & resultValue
      Else
                Reporter.ReportEvent micFail,"失败","预期结果为:" & expectValue & " 实际结果为:" & resultValue      
      End If

      Dialog("登录").Dialog("航班预订").WinButton("确定").Click
      Dialog("登录").WinButton("取消").Click
为什么会去执行楼主说的ELSE呢?

expect88 发表于 2011-3-17 14:18:42

谢谢了!
页: [1]
查看完整版本: QTP自带订票,登录问题。