51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2285|回复: 7
打印 上一主题 下一主题

[原创] 编写了两个Action,但在TestFlow中却只显示了一个

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-9-2 17:16:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天编写Flight32.exe的脚本时,明明写了两个Action(在Resources中也能看到有两个Action),但是在Test Flow中却只显示出来一个,按F5执行,也只能执行在Test Flow中显示出来的那一个Action。请问这是什么原因造成的?又如何解决呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-9-3 09:37:44 | 只看该作者
猜想你可能出现了这样一个问题
一开始是一个action1,然后用call to new action,新增一个
选择了“after the current step”
这样在action1里面就多了一句“RunAction "Action2", oneIteration”
然后把这句话删了,调用action2就没了,但其实action2还存在
你看一下expert view里面那个action选择的下拉框里,是不是action2还在?
如果是的话,就是这个原因了

call to new action有两种方式的
可以在test后面追加也就是action并列,也可以用action调action
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2008-9-3 10:51:40 | 只看该作者
没啊,我的Action1里面只有这么几句话:
Option Explicit
'进入Flight Reservation主界面
RunAction "OpenFlight32 [CommonActions]", oneIteration
RunAction "Login [CommonActions]", oneIteration

并且,在Test Flow中,执行Call To Existing Action...时,都找不到Action2的,Action2存在,但确确实实不能被使用到了...郁闷。还有,今天我新建了一个Test,本是希望将上面的Action2拷过去,结果发现DataTable的拷贝,只支持值的拷贝,表格中的公式全都拷不过去,不爽。。。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-9-3 19:50:54 | 只看该作者
显然你出现的就是我说的问题!
你不信可以按我说的操作一遍,肯定可以重现的
你到你的脚本目录下面,找到Action0目录,用文本编辑器打开Script.mts
里面是不是有一句“RunAction "Action1", oneIteration”?
你再加一句RunAction "Action2", oneIteration
你的Action2就出来了
顺便再提醒一下,删除action其实有两种情况:一种是彻底删除action,另一种是只删除调用
像你这种情况就是删除了调用出现的,至于是删除了那一个调用我不知道,但你想让Action2跟Action1是并列而不是Action1去调用的话,照我上面说的做就行了
实际上一个脚本内Action的运行组织都在这个Action0里面
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2008-9-4 14:37:55 | 只看该作者
确实如rcpp所说,这样修改之后,Test Flow中的Action确实正确了!感谢rcpp
不过我感觉有些奇怪,对Action调用类型的修改,难道必须通过修改.mts文件才能完成么?MI公司的产品不应该出现这类易用性问题才是啊!
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-9-4 16:21:11 | 只看该作者
因为qtp中有一个你看不到的Action0

Action的存在和调用之间没有相关性:存在,但是可以没有调用
Action调用有两种情况,一种是脚本调用,一种是Action调用
第一种就是通过这个看不见的Action0组织脚本直接运行的Action调用
第二种就是在我们看到的Action中来调用Action

我们在Keyword View中两种调用都可以看到
但在Expert View中只可以看到第二种调用

第二种调用可以在Expert View中添加一句RunAction ActionName来添加
但第一种调用就没法添加了,因为Action0是直接看不到的

可以直接改Action0的脚本内容
还有就是可以在Expert View中添加一句RunAction ActionName做成第二种调用,
再切到Keyword View,然后用拖动节点的方法变成第一种调用

另外就是用Call to Existing Action
但是只能call可复用的action,也就是要在准备调用的Action的Action Properties中勾选Reusable action
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2008-9-4 17:05:12 | 只看该作者
谢谢,又多学到一招了!
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-9-4 20:17:47 | 只看该作者
关注贴
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-12 09:26 , Processed in 0.070341 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表