51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4371|回复: 23
打印 上一主题 下一主题

[原创] 【已解决】qtp11 独立的action之间相互调用时,datatable的用法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-12-6 15:52:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 黑羽祭 于 2012-12-12 17:28 编辑

新建test1: Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").Set DataTable.Value("A","Action1")
新建test2:调用test1:RunAction "Action1 [Test3]", oneIteration


运行test2,报错:


请问不同action之间调用的时候,datatable应如何处理呢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2012-12-6 16:09:31 | 只看该作者
这个问题一直没解决,请各位费心
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2012-12-6 17:56:10 | 只看该作者
你是采用调用副本的方式调用的吧?
把脚本Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").Set DataTable.Value("A","Action1")中的“Action1”改成“Action1 [Test3]”

原因是action1调用的action名字叫“Action1 [Test3]”,所以DataTable中要改名。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2012-12-7 10:01:20 | 只看该作者
我不是才用的副本的方式,采用的是 调用现有操作的方式
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2012-12-7 13:46:19 | 只看该作者
没人回答啊
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2012-12-7 16:48:51 | 只看该作者
自己顶一下
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-12-7 21:01:55 | 只看该作者
你说调用test1,但脚本却是调用test3,脚本写的是RunAction "Action1 [Test3]", oneIteration。

无论是副本调用还是现有脚本调用,我说的原因都是正确的,你可以在test1的脚本中增加以下内容,然后在test2中运行:
print DataTable.LocalSheet.Name
你就能看到在test2中运行时的第三个sheet的名称是:Action1 [Test3]
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2012-12-11 10:04:57 | 只看该作者
本帖最后由 robinpipi 于 2012-12-11 10:07 编辑

我描述的名称有问题,就是test5调用test3。目前test5调用test3就会报A列不存在
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2012-12-11 10:11:09 | 只看该作者
用print 打出来是 Action1【Test3】,而在test3中把Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit("wd").Set DataTable.Value("A","Action1")中的“Action1”改成“Action1 [Test3]”后,在test5中运行,会报Action1【Test3】工作表不存在。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2012-12-11 12:03:07 | 只看该作者
你到底有几个test啊?到底是不是现有调用?如果是现有调用的化,应该只有test1和test2,怎么会出来什么test3和test5呢?
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2012-12-11 13:44:14 | 只看该作者
就是2个test,无论是1和2,还是3和5,只不过是命名不同。因为楼上的提出了我是因为调用了test3,所以做了一下解释。
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2012-12-12 11:06:35 | 只看该作者
求解决啊,求解决啊
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    13#
    发表于 2012-12-12 11:27:29 | 只看该作者
    回复 12# robinpipi


        还没有查出原因么?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
     楼主| 发表于 2012-12-12 11:40:06 | 只看该作者
    没有,这个肯定不是脚本错误造成的,就是简单的一句,然后就直接调用。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
     楼主| 发表于 2012-12-12 11:40:42 | 只看该作者
    问过几个人,都没彻底解决
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    16#
    发表于 2012-12-12 11:56:58 | 只看该作者
    回复 15# robinpipi


        好吧,我帮你看看。等等
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    17#
    发表于 2012-12-12 12:52:56 | 只看该作者
    回复 1# robinpipi


        你在Test1中的Action1写了DataTable.Value("A","Action1"),这样运行是可以的。
    当你用Test2来调用Action1的时候,你注意DataTable,Test1的Action1表的名字变为了Action1 [Test3],表的sheet名都变了,自然就找不到你要的内容。
    如果你在Test2中使用DataTable.Value("A","Action1 [Test3]"),我相信是可以使用的。

    你想多Action调用,并读表格,如果是我的话,就调用外部的Excel,不使用DataTable。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
     楼主| 发表于 2012-12-12 14:52:08 | 只看该作者
    回复 17# 黑羽祭


        不行。这是修改后运行报的错误

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2012-12-12 14:53:26 | 只看该作者
    回复 17# 黑羽祭
    不行的。
    这是修改后运行的错误。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    20#
    发表于 2012-12-12 16:07:24 | 只看该作者
    回复 19# robinpipi


        Action1和[Test3]之间少个空格
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-8 00:29 , Processed in 0.094032 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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