RunAction 的用法.
今天看HELP 的 RunAction 用法. 里面说 "Before you can use the RunAction statement in the Expert View for an external action, you must first call or copy the external action into your test by choosing Insert > Copy of Action or Call to Action" 有点不明白. 既然已"call or copy the external action into your test"那在什么地方.时候才用RunAction ActionName, ?因CALLED ACTION 已在你的TEST中了呀.大家可不可以说说看. 谢谢 在ActionA中调用ActionB
call 是获得ActionB的引用,只是引用,如果原本的ActionB的内容发生了变化,那么ActionA中的内容也跟着变化,且不能在ActionA中对ActionB修改。
copy 是把ActionB的脚本复制到ActionA中,得到ActionB的一个copy,修改ActionB_copy不对ActionB造成影响,修改ActionB也不对ActionB_copy造成影响。
有点像C语言中的传指针和传值的意思。
另外,还可以去看你的编写的脚本,一个没有分割Action的脚本,默认会生成Action0和Action1两个Action,其中Action0中一般只有一句话:
RunAction Action1,oneIteration
当你运行脚本时,实际上,只是运行了Action0,其他的Action都是被Action0调用的。copy过来的Action,如果没有使用RunAction的方法来调用,应该是不会被运行的,因为没有被Action0直接或间接调用。
[ 本帖最后由 mstiunicon 于 2007-4-4 21:32 编辑 ]
回复 #2 mstiunicon 的帖子
谢谢.我用QTP 9 好象没有"一个没有分割Action的脚本,默认会生成Action0和Action1两个Action,其中Action0中一般只有一句话:RunAction Action1,oneIteration "你用的是8.2的? 你用QTP9.0新建一个空白的脚本,然后保存。
到脚本的所在目录去查看,就知道了 那我 想问一下脚本所在 的 目录是那个
是所保存的地方妈
然后在看什么地 去观察 我看了
是有action 0
和action1 但是然后去什么地方去看 看呢
没有看到RunAction Action1,oneIteration
还是不 是明白 在那看
在lz说的 那样 要是我要调用别的 action的时候都要用RunAction Actionname ,oneIteration 吗? 刚才去看了看 是这么回事
在action0 的文件夹是能 看到的
如果你是call 一个存在的 脚本的时候你会在专家模式中看到 这句话
呵呵
还是动手看一看知道到底是样的
但是还想 要是cope的 是没有这句话的 更正 在copy的时候也是有的
我想这句话 就是一个调用外部的 action的
如果你是insert 这句话是自动添加的 RunAction "Driver_TestCase", oneIteration,table,testCaseSheetName,请问Table在和testCaseSheetName在RunAction中表示什么含义?是参数传递?
页:
[1]