51Testing软件测试论坛

标题: RunAction "Admin [User_admin]", OneIteration 请教 [打印本页]

作者: bobile    时间: 2007-8-24 13:34
标题: RunAction "Admin [User_admin]", OneIteration 请教
我知道这个一个Action的调用,但是
"Admin [User_admin]", 就只是函数名吗?
其中用方括号括起的User_admin 是不是有其他别的什么意思????
作者: rivermen    时间: 2007-8-24 13:40
"Admin [User_admin]"     整个 是一个Action的名字
作者: bobile    时间: 2007-8-24 13:43
先就这样吧
作者: winfood    时间: 2007-8-24 13:56
RunAction是QTP的一个调用Action的方法,后面跟的第一个参数是Action名字。

类似Admin [User_admin]这样的Actioin Name,一般是QTP在调用另外一个Test中的Resuable Action时给那个被调用的Action的名字。前面的Admin是Test Name,方括号中的User_admin是Resuable Action Name。估计是为了增加可读性吧。
作者: bobile    时间: 2007-8-24 13:59
楼上的,可不可以说下Resuable Action Name在QTP中是怎么操作的,或者讲详细点呢?我不太明白Resuable Action Name是什么意思了
作者: yt1985cncn    时间: 2007-8-24 14:31
回楼上的,其实很简单,就是action name,只是这个action是可以复用的
右击-》action-》action properties-》name,下面有个REUSABLE ACTION,打勾就代表课复用。
Admin [User_admin]中的Admin就是这个action的name,括号里的是整个TEST的名字,就是你保存时的名字
作者: bobile    时间: 2007-8-24 14:39
呵呵,明白了,谢谢哈
作者: mjji23    时间: 2007-8-25 00:42
我还想请教一个问题:


Action1里面RunAction "Action2", oneIteration,, MyVariable
将Action2中的输出值赋予MyVariable

那么,假如在Action2中有多个输出值,那会怎样?
如果想将这多个输出值分别赋予不同的变量,应该怎么办?
作者: winfood    时间: 2007-8-25 10:30
标题: 回复 #8 mjji23 的帖子
楼上的,单独开一个贴子更好sdlkfj2

你可以查一下QTP关于RunAction的帮助。该函数的参数不是固定多的,从第3个参数开始为被调用Action的输入或输出。
所以是有几个就传递几个,比如:
RunAction "Action2", oneIteration, Input1[, Input2, ...,] Output1[, Output2, ...]
作者: mjji23    时间: 2007-8-25 12:36
谢谢winfood的答复啦·!

不开新帖,是觉得都属于runaction,放到一起好些,呵呵sdlkfj5
作者: wasd2615    时间: 2007-8-25 17:03
RunAction "Action2", oneIteration, Input1[, Input2, ...,] Output1[, Output2, ...]

如果不是 oneIteration 而是多次呢  
怎么做到每次传入的参数不一样
作者: walker1020    时间: 2007-8-25 19:06
原帖由 wasd2615 于 2007-8-25 17:03 发表
RunAction "Action2", oneIteration, Input1[, Input2, ...,] Output1[, Output2, ...]

如果不是 oneIteration 而是多次呢  
怎么做到每次传入的参数不一样


那就把传入的参数用变量来代替不就可以了?!
作者: wasd2615    时间: 2007-8-26 20:24
dim   Input1

Input1 = ????

RunAction "Action2", 2 , Input1   '  比如这里循环2次 我传入的 Input1 的值还是一个恒定 的 啊

版主可以把怎么操作说详细一点不 ??
作者: walker1020    时间: 2007-8-26 21:58
Input1 的值是从哪里来的?你现在的问题是怎么样控制 Input1 的值,而不是考虑RunAction 怎么使用。
作者: walker1020    时间: 2007-8-26 22:00
如果是循环那么 把 RunAction 写入到循环体内 不就可以了。
作者: walker1020    时间: 2007-8-26 22:01
我不要什么比如的描述,而是需要你要详细告诉别人你的问题的context 和 scenario!
作者: winfood    时间: 2007-8-26 22:10
标题: 回复 #13 wasd2615 的帖子
一般情况下是不会将LS的代码循环两次的,那样做没有太大意义。让Input1每次都不同的方法有很多,其中一种情况是Input1的值取自DataTable的各行:
Input1 = DataTable("Field1", dtLocalSheet)
多行循环的时候,每次Input1的值就不同了。

多查查QTP帮助和其他资料,这样就可以多了解一些QTP以及编程了。
作者: wasd2615    时间: 2007-8-27 00:11
'****************
Browser("Browser").Page("Page").Sync
Browser("Browser").Navigate "http://www.163.com/"
Browser("Browser").Page("网易").WebEdit("username").Set Parameter("id")
Browser("Browser").Page("网易").WebEdit("password").SetSecure Parameter("pd")
Browser("Browser").Page("网易").WebButton("登录").Click
Browser("Browser").Page("网易通行证 > 用户验证").Sync
'****************  登录的action  

'****************
RunAction "Copy of Action1", oneIteration,DataTable("Field1", dtLocalSheet),"22"

'****************  登录的action  

知道了
应该是在参数上做文章而不是  oneIteration 这里 谢谢楼上 的 :)
原来这里也可以放datatable的参数,又学到了一招呵呵
作者: bobile    时间: 2007-8-27 09:25
呵呵.又学到了哈
作者: 568529774    时间: 2010-1-28 14:25
学习了...




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