如何让QTP部分循环

我测试一个程序,分成登陆、新增、退出三个部分。我设置了参数化,运行结果是:登陆-新增-退出-登陆-新增-退出-登陆-新增-退出-……我需要的循环是这样的:登陆-新增1-新... 我测试一个程序,分成登陆、新增、退出三个部分。
我设置了参数化,运行结果是:
登陆-新增-退出-登陆-新增-退出-登陆-新增-退出-……
我需要的循环是这样的:
登陆-新增1-新增2-新增3-新增4-新增5-……-退出。
请问如何实现?
我把新增的设成一个action,登陆和注销也分别设成action,然后进行参数化运行,
结果还是三个action都运行了,郁闷,希望能给出具体的解决方案。
比如说for循环,如何循环两次(不用运行的代码,只要for代码)。
展开
 我来答
zjdl1234
推荐于2016-01-10 · TA获得超过134个赞
知道答主
回答量:44
采纳率:0%
帮助的人:63.7万
展开全部
你完全没了解QTP的Action和DataTable间的关系~还有QTP循环迭代设置与Action的关系
建议一:不使用QTP中的循环迭代,自定义For循环调用Action。
RunAction 登陆,oneiteration
For i = 1 to 2
RunAction 新增,oneiteration
Next
RunAction 退出,oneiteration
建议二:多多了解下QTP的Action和DataTable吧~
QTP有一个隐藏Action的,既Action0,既GlobalSheet对应的Action(补充:DataTable中每个Sheet都对应一个Action,GlobalSheet也不例外的),是QTP脚本执行的入口,相当于C语言里的main函数,很多人刚使用QTP,创建一个脚本就看到Action1,以为脚本是从Action1开始的,实际上Action1是在Action0中被调用了~
Action0中的脚本一般就一句话~
RunAction Action1,oneiteration
如果你把测试数据放在GlobalSheet中,然后Setting页面又设置DataTable循环执行,那最后的结果就是使用GlobalSheet里的数据循环执行Action0,也就是所有脚本都循环。
你这种情况,解决方法就是把测试数据从GlobalSheet中移到“新增”Action的LocalSheet中,然后调用新增Action时循环迭代
如:RunAction 新增,alliterations
-------------以上两个方法都可以解决你的问题,个人建议使用For循环,如果使用QTP的迭代循环,没弄明白规律是容易出错的。还有什么问题再联系~
anjao
2010-12-24 · 超过13用户采纳过TA的回答
知道答主
回答量:26
采纳率:0%
帮助的人:26.2万
展开全部
设置多个Action。把新增那一步单独放进一个Action中。添加Action从QTP工具中选择Insert——Cell to New Action。给你提供这个思路。具体的方法自己查一下。

好吧,补充一下:比如说你想循环Action2,那么在Test Flow选中Action2点鼠标右键,选择Action Call Properties,然后选择Run on all rows,确定。
朋友,给你个小建议:多看看QTP的帮助文档。如果你还要想实现高级功能那就要多了解一下VBS了,这样就不用在乎什么QTP自身的功能了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuanchang321
2010-12-23
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
就用for循环新增3次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式