51Testing软件测试论坛

标题: QTP中怎样设置ACTIVE的迭代次数 [打印本页]

作者: yu12377    时间: 2012-12-27 23:20
标题: QTP中怎样设置ACTIVE的迭代次数
大家好,我有三个ACTIVE,分别是ACTIVE1,ACTIVE2,ACTIVE3,其中ACTIVE1是打开程序并登陆的操作,ACTIVE2是正常的业务操作,ACTIVE3是关闭程序并退出的操作,我现在想要ACTIVE2迭代10次,ACTIVE1与ACTIVE3都只运行一次,请问这个该怎样设置。

不知道QTP能不能实现这功能,我以前用过LOADRUNNING,它好像有INIT、ACTIVE、END,其中INIT与END就都只运行一次,中间的ACTIVE可以设置迭代,但QTP里面我没找着类似的功能,谢谢大侠指教。
作者: xjwldlover    时间: 2012-12-28 09:28
一个简单的做法,在Active1 前新建一个action,使用
RunAction "Action1", oneIteration 可以指定你要运行的action,比如2你要运行10次,就以下
RunAction "Action1", oneIteration
for i = 0 to 9
RunAction "Action2", oneIteration
next
RunAction "Action3", oneIteration
LZ可以试试,不需要追问如何新建action吧~
作者: 黑羽祭    时间: 2012-12-28 10:32
回复 1# yu12377


    楼上正解,好理解一点可以这么写:
  1. RunAction "Action1", oneIteration
  2. for i = 1 to 10
  3.     RunAction "Action2", oneIteration
  4. next
  5. RunAction "Action3", oneIteration
复制代码

作者: yu12377    时间: 2012-12-28 11:19
回复 2# xjwldlover

再请教一下,如您所说,那ACTION2应该在哪块定义,是不是最终ACTION2最终会运行11次,其中循环体内调用10次,在它定义的地方调用一次,是这样么? 谢谢啦

我前面表述的有点不对,我的业务是:
ACTION1:打开程序并登陆;
ACTION2:正常业务操作,已经使用DATA TABLE进行参数化,一共有10条参数;
ACTION3:关闭程序并退出;

我现在如果在“FILE----SETING”中设置只迭代一次的话,那我在DATA TABLE中设置的10条参数就只能运行1条了,其余9条始终无法运行;如果我设置为:“在所有行上运行”的话,那ACTION1、ACTION2、ACTION3都会跟着运行10次,这不是我希望的,我希望ACTION1、ACTION3都只运行一次,且ACTION2能够执行完我在DATA TABLE中设置的所有参数,请问这该怎么设置。谢谢,谢谢,谢谢啦!
作者: yu12377    时间: 2012-12-28 11:22
回复 3# 黑羽祭


亲爱的版主先生,我又对问题进行了补充,您帮我看看吧,盼指教,呵呵,谢谢啦
作者: 黑羽祭    时间: 2012-12-28 11:57
回复 5# yu12377


    哈哈,你玩Loadrunner的吧。
我用自带的DataTable处理测试数据的情况不多,我一直觉得使用DataTable+迭代设置很麻烦。所以我都是使用的外部Excel读取数据。关于迭代次数的问题,我都是用的循环进行反复操作。
像“ACTION1:打开程序并登陆”和“ACTION3:关闭程序并退出”,我也都是用Function解决,不用Action,感觉Function用起来更顺手。
读Excel的方法我签名栏里的空间里有写过一个。
作者: coolwind09    时间: 2012-12-28 16:07
  1. 分开设置循环。一个Test下面三个Action,分别为Action1,Action2,Action3.所有只用把Action设置为循环三次,然后整个Test循环一次就好了。
复制代码

作者: menghan_104    时间: 2013-1-6 10:51
LZ最后是怎么解决的啊,是写方法,还是设置action
作者: cherrycai    时间: 2015-10-3 07:33
楼主怎么解决的?我也很想知道,能不能分享一下?




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