51Testing软件测试论坛

标题: data table中的循环问题 [打印本页]

作者: michelle_happy    时间: 2005-7-1 16:52
标题: data table中的循环问题
如果在global中有3行数据,如果我录制的动作是“登陆-添加”,3行数据是待添加数据。
1.不写任何循环语句,QTP本身会循环3次,即“登陆-添加”,循环3次,加入3组数据。
2.如果在“添加”中增加循环,则添加3次数据。此后又重新登陆然后开始添加第二条数据……
Dim i,cout
cout=datatable.GetSheet("Global").getRowCount
i=1
Do while i< cout+1
        datatable.setCurrentRow(i)
**********中间步骤省略****************
i=i+1
Loop

问题是怎么设置能让它不再重复新增第二条数据??我知道如果放在local sheet中不会出现这种问题,不过global中的怎么解决呢??
作者: QA_BAY    时间: 2005-7-1 17:11
即然这样,你可以放在LOCAL SHEET中阿.何必自找烦恼呢?
现在我才知道为什么GLOBAL和LOCAL SHEET中的区别,各有各的好处!
按不同的需要选择不同的录制方法!
能达到目的,你还想它怎么样呢?
作者: michelle_happy    时间: 2005-7-1 17:43
标题: 我碰到一个这样的问题
按xingxing79 的做法,我把add,modify,delete等动作写入了case中,然后将add等动作放入global中,执行的时候自动调用。详情:http://bbs.51testing.com/viewthread.php?tid=13946&fpage=1

她当时是建议所有的数据都放在global里,我也觉得这样比较简洁,因为新增和修改的数据相同的字段在sheet中可以共用一列。后来问题来了,如果出现这样的输入数据,见附件图,假设是一个选课系统,每人可以选1~N门课
如果新增一条数据对应N行,N不确定。2,3行是需要循环取值的,显然在global中取完了2行还会再回去,出现上面的问题

如果只留action在global,其他在local,则新增,修改,删除每个动作需各建一个sheet,新增2次则需2个新增sheet,因为local循环一次后会跳出,再次返回原来的计数可能已经没了。如果这样的话就太麻烦了,如果新增10条,晕。

以上是我自己乱想的,有些地方可能不对,请大家指点指点:)

[ Last edited by michelle_happy on 2005-7-1 at 17:44 ]
作者: lovetest6    时间: 2005-7-4 09:56
你可以设置一下,不要让QTP在globalsheet中有多行数据的时候 运行多次嘛。
呵呵。
作者: lovetest6    时间: 2005-7-4 09:57
QTP plus中有个例子,不知道大家看过没?
我认为,对于理解如何录值脚本有一定的帮助。
作者: lzz    时间: 2005-7-4 10:27
Originally posted by lovetest6 at 2005-7-4 09:57 AM:
QTP plus中有个例子,不知道大家看过没?
我认为,对于理解如何录值脚本有一定的帮助。

版主没看过你说的那个例子,你贴出来让大家都学习学习。
作者: QA_BAY    时间: 2005-7-4 11:27
这个是在QTP8.2里面的,如果你有8.2的话就可以看到,
首先先安装QUICKTEST PLUS SETUP,然后就可以看到的啦

多谢谢LOVETEST6提醒!

作者: michelle_happy    时间: 2005-7-4 13:30
问题已解决,设置run为run one iteration only,然后自己写循环语句控制。
这样其实放在global和放在其他sheet里面就没什么区别了。看来xingxing79的方法还是适用的。呵呵

QTP plus还真是没安装,今早装了一下,发现里面挺多有用东西的。好好学习!!
作者: lovetest6    时间: 2005-7-4 13:58
多谢QA_BAY帮助我补充哦,最近脑子乱,总是丢三落四的,没给大家说清楚。

里面的例子有看不清楚的,建议读一下help哦:)
比如有很多以前大家常会问到的一些代码等等,在里面都能找到很好的说明。




to:lzz里面的东东很多,贴出来恐怕不大方便了。
你先看看吧,有需要探讨的再贴上来,大家看看。:)
如果还找不到,可以加我的msn询问。
作者: lzz    时间: 2005-7-4 14:20
Originally posted by lovetest6 at 2005-7-4 01:58 PM:
多谢QA_BAY帮助我补充哦,最近脑子乱,总是丢三落四的,没给大家说清楚。

里面的例子有看不清楚的,建议读一下help哦:)
比如有很多以前大家常会问到的一些代码等等,在里面都能找到很好的说明。

...

谢谢,以前没装qtp plus,所以在help中没找到那些。




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