YangMay 发表于 2010-3-2 10:52:56

QTP9.2自带订机票例子问题

如下所示:录的脚本是想实现订十张机票,而这十张机票的起点和终点都不一致,而在点击如下图所示的"Flights"按钮以后,每次都能够取到与起始点相关的机票信息,并机票信息中取相关记录,具体的脚本应该怎么去实现.
录的相关脚本如下所示:
SystemUtil.Run "D:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\flight4a.exe","","D:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\","open"
Dialog("Login").WinEdit("Agent Name:").Set "mercury"
Dialog("Login").WinEdit("Password:").SetSecure "4b8b526fd45b41276cdc0c10f557838950fb03e4"
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").WinObject("Date of Flight:").Type "100311"
Window("Flight Reservation").WinComboBox("Fly From:").Select DataTable("Start", dtGlobalSheet)
Window("Flight Reservation").WinComboBox("Fly To:").Select DataTable("End", dtGlobalSheet)
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "15877   DEN   08:00 AM   FRA   08:45 AM   AA   $100.50"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Type "M"
Window("Flight Reservation").WinEdit("Name:").Set "May"
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"

在脚本中将起始点两个进行了参数化..点击"Flighst"后取相关的起始点进行查询和获取机票列表不知道该怎么写.
刚开始学QTP,麻烦各位大侠帮帮忙.

gold_85 发表于 2010-3-2 15:44:29

Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "15877   DEN   08:00 AM   FRA   08:45 AM   AA   $100.50"

你可以改成Window("Flight Reservation").Dialog("Flights Table").WinList("From").active 1,
还有你要用循环吧..

花满路 发表于 2010-3-2 17:19:27

Window("Flight Reservation").Dialog("Flights Table").WinList("From").Activate 0
你去QTP帮助里看看WinList 对象的 Activate 方法
还有注意Activates (double-clicks) the specified item in the list. 双击后就用不着
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
这一步了。

YangMay 发表于 2010-3-4 16:28:00

谢谢楼上两位仁兄,用你们说的方法已经解决.,同时我还自己使用WinList的Select方法进行解决了关于动态取航班信息.
有两种方法进行解决该问题:
1)使用Winlist的active方法.脚本中语句修改如下:
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "15877   DEN   08:00 AM   FRA   08:45 AM   AA   $100.50"
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Activate 1'使用activate
同时将这句注释掉:Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
如果winbutton的未注释掉,则在运行过程中会出错.
2)使用WinList的Select方法,脚本中语句修改如下:
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select 1
页: [1]
查看完整版本: QTP9.2自带订机票例子问题