QTP8.2中action参数传递问题
被测软件:QTP82自带的例子中的windows版本的Flight问题描述:
在main_action中调用了4个action(分别是登录,新建订单,打开订单,关闭订单)
想实现的功能:是将:action_new order中的order no的值 传到 action_open order中.
自己的做法就是:
1)在action属性里建立一个输出参数为:out_order
2)在建立一个标准输出值,将orderno结果传给一个参数为out_order。
3)在action_open order中建立一个输入参数为:in_order
4)在action_open_order中点击“右键——action call property”,在弹出的对话框中点击“parameter values”选项卡,在该选项卡中定义参数变量,界面如图:
在弹出的“values Configration Option”对话框中,少一项选项。
请教:该如何实现从action1将参数传入到action中呢?
(从本论坛中看到的是QTP9。2版本中有一项叫test Parameter,可以解决此问题) 我看得有点晕,把这个问题简单理解为怎么在两个平级action之间传递参数。
实现步骤如下:
1. 在Action页面,添加 RunAction "Action1 new order", oneIteration, output ' 此output就是你要从new order里面传出来的参数
2. 进入 new order, 在动作属性-参数里设置一个输出参数output
3. 在new order里面, 添加 parameter("output")=“你要传的值”
#解释一下,这样在第三步里面设置的值就被成功的导出到主action了,接着需要把这个值传给open order
4. 在Action页面,添加 RunAction "Action1 open order", oneIteration, output
5. 进入 open order, 在动作属性-参数里设置一个输入参数output
6. 在代码里使用 parameter("output") 即为参数值了 8.2的不清楚,反正9.5版本的很好解决,就是新建一个变量,把它做为Action调用时的参数即可(放在最后面)。 ellven:
脚本执行到:
Parameter("output")=Window("Flight Reservation").WinEdit("Order No:").GetROProperty ("text")
就不往下执行了.这是怎么回事.:) 学习了 原帖由 marysnow 于 2008-9-5 14:29 发表 http://bbs.51testing.com/images/common/back.gif
ellven:
脚本执行到:
Parameter("output")=Window("Flight Reservation").WinEdit("Order No:").GetROProperty ("text")
就不往下执行了.这是怎么回事.:)
具体点?哪一个parameter("output"),输出还是输入的?
错误信息是什么? 我在调试时,加入了msgbox,值可以取出来 ,然后执行到set方法则值写不进去,后来我重新执行一下option选项中的restore layout,则再run脚本,调试一看,值进来了.
这两天挺郁闷的,用8.2总是有问题,以前的脚本好好的,现在拿出来一执行就有问题了.
问题已经解决,按照elven提供的方法即可.
谢谢elven的热心解答!:handshake
[ 本帖最后由 marysnow 于 2008-9-5 16:04 编辑 ] 不客气,共同提高:loveliness:
页:
[1]