51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2873|回复: 10
打印 上一主题 下一主题

[原创] insert existing action 的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-9-19 11:16:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
RunAction "启动IE [启动IE]", oneIteration   '启动IE,打开主页面
RunAction "Login [登录]", oneIteration      '以admin用户登陆系统
RunAction "Menu [菜单]", oneIteration,"业务设置","组织结构","组织"        '进入“业务设置----组织结构-----组织 ”页面


For row=1 to DataTable.GetSheet("新增部门").GetRowCount
RunAction "功能按钮", oneIteration, "新增", "部门"                                                                                                               '数据驱动增加部门
RunAction "新增部门", oneIteration,row,state
Select Case state
Case "success_one": RunAction "验证新增成功", oneIteration
Case "success_two": RunAction "验证新增2级部门成功", oneIteration
End Select
Next

以上脚本为新增一个部门的简单脚本,现在问题是,我下面要做部门合并的业务,就需要创建一些前置数据,所以我在部门合并用例中insert existing 新增部门的整个ACTION,但这时就出问题了。在For row=1 to DataTable.GetSheet("新增部门").GetRowCount
由于insert existing 后,ecexl的sheet就是不是“新增部门”了,而是"新增部门[新增部门]",我直接去ecexl修改了sheet的名称,这步就可以通过,但后面的错误,那是一堆一堆了啊。麻烦会的人帮忙解决下
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-9-19 11:37:32 | 只看该作者
你需要的是把原来的
RunAction "新增部门"
改成
RunAction "新增部门 [新增部门]"

因为QTP是用Action名+[脚本名]来识别外部调用的Action的
试想:假如没有这种机制,不同脚本中相同的Action名就无法正常调用了
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2008-9-19 11:53:49 | 只看该作者
insert existing action首先不能修改里面的内容吧,,而且我的脚本在for循环的地方就出错了。找不到sheet,改下面也没有用啊
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-9-19 14:58:46 | 只看该作者
被你搞晕了
你贴的代码是调用的脚本,还是被调用的脚本啊?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2008-9-19 15:12:12 | 只看该作者
不好意思,以上脚本为被调用的脚本,这个脚本是新增的功能,别的功能点需要这个脚本来增加数据所以才调用它的。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-9-19 15:24:34 | 只看该作者
你可以换种方式
你把生成数据存放到外部文件
这样就没有这么多后顾之忧了!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2008-9-19 15:36:41 | 只看该作者
斑竹,除了用外部文件,在datatable中有方法解决没有啊,急啊。 看来用合成的设计方式对QTP不起作用啊
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-9-19 15:46:19 | 只看该作者

等待高人来解了

呵呵 还没有遇见过!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2008-9-19 15:55:22 | 只看该作者
那就不说技术上的问题了,说业务的吧,我现在已经实现了一个新增功能,后面很多业务功能都需要新增的特定的数据来做测试,就比如以上的例子:
新增功能功能中实现了2个新增的用例,增加部门和增加子部门;
现在我要做合并部门的功能点了,所以想调用原来的脚本,只是把datatable里面的数据改下,初始多种部门的组合情况,再来实现合并的多种用例,

如果要实现这样的效果,该怎么组织脚本会比较好。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2008-9-19 17:33:20 | 只看该作者
原帖由 lijian422202 于 2008-9-19 15:36 发表
斑竹,除了用外部文件,在datatable中有方法解决没有啊,急啊。 看来用合成的设计方式对QTP不起作用啊


可以定义一个excel,importsheet进来,是运行时生效的
也可以用DataTable.Value将你想用的的值一条条直接写进去,也是运行时生效的
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2008-9-22 09:45:36 | 只看该作者
谢谢RCPP,kevin_swpi
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 08:22 , Processed in 0.076956 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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