51Testing软件测试论坛

标题: Action间是如何传递参数的 [打印本页]

作者: investmark    时间: 2006-5-24 11:01
标题: Action间是如何传递参数的
现在要把Action1中的参数要在Action2中使用,不知如何传递的。看了半天input和 output这间的参数,还是没有看明白,请高人指点一下。
作者: xiaonan    时间: 2006-5-24 12:03
input,是把值传到Action里,output是把Action里的值传出来.所以你可以在Action1设置output参数把值传出来,然后Action2设置input参数把值传进去
作者: investmark    时间: 2006-5-24 13:14
如何操作,请给个简单的例子吧
作者: xiaonan    时间: 2006-5-24 13:43
主aciton里的脚本
Dim order
RunAction "login", oneIteration,"mercury","mercury"

RunAction "new order", oneIteration,order

RunAction "open order", oneIteration,order
RunAction "logout", oneIteration
第一个子action为login,里面设置了两个input参数,把用户名和密码传给里面的参数
Dialog("Login").WinEdit("Agent Name:").Set Parameter("username")
Dialog("Login").WinEdit("Password:").Set Parameter("passwd")
第二个子action为new order,里面设置了一个output参数,把定单号的值放在这个参数里传出来.
Window("Flight Reservation").WinEdit("Order No:").Output CheckPoint("Order No:")
第三个子action为open order,里面设置了一个input参数,把定单号的值传进去打开这个定单.
第二个子action为new order,里面设置了一个output参数,把定单号的值放在这个参数里传出来.
所有的参数都在step---Aciton Properties里的参数设置
作者: mary.mo    时间: 2006-5-24 17:01
我在Action1里面设置了个input Parameter,名字为name,
我要在Action2里面调用这个name怎么办啊?
比如这个程序:
Action1:
Parameter("name")="mary"
a=Parameter("name")
MsgBox a

Action2:
b=Parameter("name")
MsgBox b

这时执行Action1时会出来对话框”mary",但是执行到Action2时,就会提示没有"name"这个Parameter,其实我要调用的是Action1里面的"name",那该怎么办呢?
作者: QA_BAY    时间: 2006-5-24 17:51
先看看HELP,看明白了,再对一下自己写的脚本

你可以这样写
Action1:
Parameter("name")="mary"
a=Parameter("name")
MsgBox a
runaction "action2",oneIteration,a(action2应该新建一个input函数,str_temp)
b=Parameter("str_temp")
MsgBox b
b的值就是由ACTION传进来的
作者: QA_BAY    时间: 2006-5-24 18:06
看来说的只能看懂一半,其实"51Testing就业学员"说得很清楚,但录制和修改脚本还需要细心!
现在本人根据他所说的录制了一个脚本.下载到本机上运行,应该可以看明白.
我用的是QTP9.0,如果运行不了.那就看脚本内容!
作者: QA_BAY    时间: 2006-5-24 18:07
四个一起下载下来才可以解压




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