[转]QTP中一个关于Action的实例

上一篇 / 下一篇  2006-12-09 16:22:16 / 个人分类:QTP知识

QTP中一个关于Action的实例

2006-12-08 10:48:07 / 个人分类:QTP

     本例还是以QTP安装后自带的Flight Reservation为例来录制脚本.首先我们把登录程序系统,然后新建定单,再打开定单,最后关闭系统.分别录制成5个action,设置一个主的action为main来分别先后调用login(登录),new order(新建定单),open order(打开定单),logout(退出).

注明:设置拆分action,选择菜单功能split Action .选择independent of each other为并列的两个action.选择Nested为主次的两个action.

 

全部录制完所有action后,在main action中代码如下:

RunAction "login", oneIteration
RunAction "new order", oneIteration
RunAction "open order", oneIteration
RunAction "logout", oneIteration

其中RunAction是一个调用action的函数,后面跟action名和要传递的参数.

说明:

RunActionActionName,[Iteration,Parameters]

在这里我再引入action之间参数传递.在login action中选择菜单选项,在action properties中设置两input参数分别先后为username 和 passwd.

这样我们就通过RunAction "login", oneIteration,"mercury","mercury"  把这两个变量分别传给username 和passwd.这边的变量先后关系分别依次对应了action properties里input参数的先后关系.

这样我们就可以在login action中调用这两个变量了.

Dialog("Login").WinEdit("Agent Name:").SetParameter("username")
Dialog("Login").WinEdit("Password:").SetParameter("passwd")
Dialog("Login").WinButton("OK").Click

下面再来实现从一个action中传出一个变量给另一个action.

那么我们在new order 中选择菜单选项,在action properties中设置一个output参数为orderno

Window("Flight Reservation").WinEdit("Order No:").Output CheckPoint("Order No:")

通过上面这句话把生成的定单号的值存放到这个ouput参数中

RunAction "new order", oneIteration,order
RunAction "open order", oneIteration,order

再靠main action中这个order变量来传递,这个变量正好对应着new order里的output参数.从new order中传出来,再把这个变量传给open order.当然在open order中还要同样设置input参数.和这个order变量对应起来.

这样就可以在open order中使用这个变量了.

Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").Set Parameter("orderno")

当然其实两个action之间传递参数还可以更简单点.比如一个脚本中 datatable和环境变量都是全局的,在一个脚本中的任何action都能使用.所以可以借用这两个来传递.

通过这个例子最主要讲的是两点,拆分action和action之间的参数传递


TAG: QTP知识

引用 删除 louver1314   /   2010-09-06 17:27:17
在setting中设置,之后对parament 的 input 和 output 那块设置的
引用 删除 yan_guimei   /   2009-07-28 13:41:47
RunAction "new order", oneIteration,order
RunAction "open order", oneIteration,order

后面的order是怎么生成的
我怎么一直实行不了这个调用
 

评分:0

我来说两句

Open Toolbar