专家视图代码如下:
'登录部分 Dim i '定义行号 For i=1 to datatable.GetSheet("Action1").getrowcount Dialog("Login").WinEdit("Agent Name:").Set DataTable("name", dtLocalSheet) Dialog("Login").WinEdit("Agent Name:").Type micTab Dialog("Login").WinEdit("Password:").SetSecure DataTable("password", dtLocalSheet) Dialog("Login").WinButton("OK").Click If Dialog("Login").Dialog("text:=Flight Reservations").Exist Then '在 text 与 = 号之间还有一个冒号 : Dialog("Login").Dialog("Flight Reservations").WinButton("确定").Click End If Next
'主界面部分 Window("Flight Reservation").ActiveX("MaskEdBox").Type "090925" Window("Flight Reservation").WinComboBox("Fly From:").Select "London" Window("Flight Reservation").WinComboBox("Fly To:").Select "Frankfurt" Window("Flight Reservation").WinButton("FLIGHT").Click Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12488 LON 08:00 AM FRA 08:45 AM AA $105.40" Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click Window("Flight Reservation").WinEdit("Name:").Set "gege" Window("Flight Reservation").WinButton("Insert Order").Click Window("Flight Reservation").WinButton("Button").Click Window("Flight Reservation").WinMenu("Menu").Select "File;Exit" |
出现的问题:重新运行脚本并查看结果,发现软件只针对本地表用户名、密码的第一行进行了6次操作。即令用户名及密码都为空,点击OK,出现错误提示框,点击“确定”,这一段操作重复6次。然后必须手动输入正确密码后,才能进入主界面,后续操作正常进行。
问题解决:通过别人提醒发现,for循环中,只定义了循环的次数,却没有获取本地表每一行的数据,于是在for语句后加上datatable.LocalSheet.SetCurrentRow i 后,脚本成功运行。
版权声明:本文出自 Lilian51 的51Testing软件测试博客: http://www.51testing.com/?594043
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。