51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3160|回复: 7
打印 上一主题 下一主题

关于数据驱动的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-11-17 11:35:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近我使用了数据驱动功能,但是很奇怪出现了一些古怪问题:
                    table = "zuobiao.xls";
        ddt_close(table);
        rc = ddt_open(table, DDT_MODE_READ);
        if (rc!= E_OK && rc != E_FILE_OPEN)
                pause("Cannot open table.");
        ddt_get_row_count(table,table_RowCount);

function L_SetItemUnderBasicDimension(DimensionMethod,second,third,fourth,fifth,sixth)
{
        auto result = E_OK;
        win_activate (gProductName);
        set_window (gProductName, 1);
        obj_mouse_click ("标注工具", 14, 15, LEFT);#点击标注工具栏上的标注命令

        switch (DimensionMethod)
        {
                   case 0:
                        win_activate (gProductName);
                        set_window (gProductName, 1);
                        list_select_item("标注类型","基本标注");#选取标注类型
#                        obj_mouse_click("Afx:400000:2b",371,218);
#                                obj_mouse_click("Afx:400000:2b",602,351);
#                               
                        for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
                        {
                                ddt_set_row(table,table_Row);
                                win_activate (gProductName);
                                 set_window (gProductName, 1);
                                obj_mouse_click("Afx:400000:2b",ddt_val(table, "x1") ,ddt_val(table, "y1")  );
                        }
#                               
                        if(second==0)
                                L_SetListItem("标注2","文字平行");
                        else
                                L_SetListItem("标注2","文字水平");
                       
                        if(third ==0)
                                L_SetListItem("标注3","长度");
                        else
                                L_SetListItem("标注3","直径");
                       
                        if(fourth==0)
                                L_SetListItem("标注4","正交");
                        else
                                L_SetListItem("标注4","平行");
                                               
                        if(fifth==0)
                                L_SetListItem("标注5","文字居中");
                        else
                                L_SetListItem("标注5","文字拖动");
                               
                        if(sixth==0)
                                L_SetListItem("标注6","文字有边框");
                        else
                                L_SetListItem("标注6","文字无边框");
                        break;       
                       
                case 1:
                        if(        second==0)
                                L_SetListItem("标注2","文字平行");
                        else
                                L_SetListItem("标注2","文字水平");
                               
                        if(third==0)
                                L_SetListItem("标注3","正交");
                        else
                                L_SetListItem("标注3","平行");
                               
                        if(fourth==0)
                                L_SetListItem("标注4","文字有边框");
                        else
                                L_SetListItem("标注4","文字无边框");
                        break;
#                               
#                        case 2:
#                        case 3:
#                        case 4:       
#                        case 5:
#                        cae 6:
#                        case 7:
#                        case 8:
                default:
                report_msg("ERROR Occured when selecting item");
        }                               
    return result;
}

下面是我的主程序,(一部分)其他的不是很重要

                                        for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
                                        {
                                                ddt_set_row(table,table_Row);
                                        istep++;
                                                DimensionImg="DimensionImg"&istep;
                                                StatusBarImg="StatusBarImg"&istep;

                                                obj_mouse_click ("Afx:400000:2b", ddt_val(table, "PickX")  , ddt_val(table, "PickY") , LEFT);
                                        }
                                        ddt_close(table);

现在问题是,我如果把运行的话,会有提示以下错误:

附件是图片。

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2005-11-17 11:36:58 | 只看该作者
谢谢了,麻烦关注一下!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2005-11-17 16:02:01 | 只看该作者
不好意思,发贴得时候没有排版好。
我现在初步知道原因了,因为我再运行程序的时候,脚本需要对你自定义的函数进行检查,而table_Row不是全局变量,在自定义函数中,就无法识别了,因而说它没有声明。同理变量table_RowCount也是的!
这只是我的猜测,不知道对不对。我不知道如何解决。

其实我也试过再我函数中写成
auto table_Row=0;
auto table_RowCount=10;(我有十组数据,但是我以后改变数据书目的时候,难道还要每次在这修改它的值码?,所以我觉得这样肯定不妥)

怎么就没有人来看呢!!!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2005-11-18 09:45:46 | 只看该作者
嘿嘿,帮顶,期待有人回答!
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-11-28 10:19:42 | 只看该作者
呵呵,问题已经解决。
看来,自己才是最好的老师
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-4-13 15:40:00 | 只看该作者
还是有人关注的,自己解决了,也要跟大家分享一下嘛,期待哦
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-4-19 15:30:25 | 只看该作者
在你的脚本的开头 声明这个变量 statci table_Row
然后在你的函数里面 extern table_Row就可以了
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2006-4-20 10:34:35 | 只看该作者
学习一下
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-24 21:22 , Processed in 0.075237 second(s), 30 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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