51Testing软件测试论坛

标题: 循环的问题 [打印本页]

作者: skyhen    时间: 2007-6-27 23:41
标题: 循环的问题
dim flag
flag =1
If flag = 1 Then
Dialog("Login").WinEdit("Agent Name:").Set DataTable("p_Text1", dtGlobalSheet)
Dialog("Login").WinEdit("Agent Name:").Type  micTab
Dialog("Login").WinEdit("Password:").SetSecure DataTable("p_Text", dtGlobalSheet)
Dialog("Login").WinEdit("Password:").Type  micReturn
Window("Flight Reservation").WinObject("Date of Flight:").Type "062807"
Window("Flight Reservation").WinComboBox("Fly From:").Select "Paris"
Window("Flight Reservation").WinComboBox("Fly To:").Select "Frankfurt"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12990   PAR   08:09 AM   FRA   10:04 AM   AA     $225.80"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Type "JOJO"
Window("Flight Reservation").WinEdit("Name:").Set "JOJO"
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."
Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"
Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").Set DataTable("p_Text2", dtGlobalSheet)
Window("Flight Reservation").Dialog("Open Order").WinButton("OK").Click
Window("Flight Reservation").WinButton("Delete Order").Click
Window("Flight Reservation").Dialog("Flight Reservations").WinButton("是(Y)").Click
Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"
flag = flag -1
msgbox flag
else
msgbox "1111111"
End If

'flag = flag -1
'msgbox flag
'else
我参数化了一下用户名和密码,没有加ELSE的时候,脚本会自动卡在GLOBAL表中的第2行,但为什么加了ELSE语句就可以达到循环的作用
作者: 风过无息    时间: 2007-6-28 07:27
脚本会自动卡在GLOBAL表中的第2行是什么意思 ?
循环是否成功和是否有ELSE没有联系的。
作者: rivermen    时间: 2007-6-28 09:30
开始执行第二行参数的时候,环境是不是跟第一行执行的时候一样呢?

只是不会是Else 影响循环的
作者: lizhm    时间: 2007-6-28 10:11
楼主 你不写ELSE 的时候 好象是个死循环啊!

还有一个问题 你没有指定GLOBAL表中的行数 它会自动读到下一行吗?
作者: skyhen    时间: 2007-6-28 16:57
我在没有添加ELSE的时候,脚本执行到GLOBAL的第2行就一直卡在那边
我参数化的列名称全部指定的,程序会自动执行GLOBAL中的第2行,但就是卡在那边没有反映了。
如果加了ELSE的话,系统就会自动执行GLOBAL中的每一行,真是搞不懂,请各位大大再帮小第看看叫,小弟先谢谢了
作者: jimmy2006.hi    时间: 2007-6-29 10:08
你的循环是在哪里设置的?是在test setting中的Run中设置的吗?选择的哪种循环方式呢?应该和else没有什么关系,因为每次循环的时候 flag你都重新赋值了,flad=1所以if语句其实没多大意义。

[ 本帖最后由 jimmy2006.hi 于 2007-6-29 10:29 编辑 ]
作者: hujinshu    时间: 2007-6-29 17:38
Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"
你最后的时候已经退出了程序了,在开始的时候并没有看到你通过脚本来起动你要测试的应用程序,所以没办法跑第二遍的,至于你说的增加了Else后可以跑第二条语句,倒是很奇怪了。




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