xiaofang1004 发表于 2006-8-1 09:39:56

请帮我看看这里怎么回事?

一运行就提示这个错误,我不知是哪里错了。

生如火花 发表于 2006-8-1 10:34:42

能不能不要贴这么大的图,你们提交BUG都用这格式么....

winterson 发表于 2006-8-1 12:54:00

if 判断好象有误,小括号少了一个,估计问题出在这里

风过无息 发表于 2006-8-1 13:31:32

if((ddt_val(table, "user") =="")||(ddt_val(table, "pwd" ==""))
应该是:
if((ddt_val(table, "user") =="")||(ddt_val(table, "pwd") ==""))

紫罗兰 发表于 2006-8-1 13:36:55

是恩,下次可以直接把代码贴上吧,图片打开好慢~~
那个if语句第二个等号前面少了个括号
下面的tl_step语句怎么看起来不象分号结尾呀?

xiaofang1004 发表于 2006-8-1 13:53:42

多谢,可是我加上了那个括号,
可是还有提示错误,由26行变为27号了。一样的错误

zhangjinyun99 发表于 2006-8-1 15:01:46

我试过了,代码如下,两种方法都可以.
if (rc!= E_OK && rc != E_FILE_OPEN)
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
{
        ddt_set_row(table,table_Row);
       
        # Login
                set_window ("Login", 2);
                edit_set ("Agent Name:", ddt_val(table,"Agent_Name"));
                set_window ("Login", 6);
          edit_set("Password:", ddt_val(table,"Password"));
          edit_get_text("Agent Name:",name);
      edit_get_text("Password:",pass);
                if((name=="")||(pass==""))
                {
                tl_step("name or pass is none",1,"you can't put in");
                }
               
               
}
ddt_close(table);
或者
if (rc!= E_OK && rc != E_FILE_OPEN)
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
{
        ddt_set_row(table,table_Row);
       
        # Login
                set_window ("Login", 2);
                edit_set ("Agent Name:", ddt_val(table,"Agent_Name"));
                set_window ("Login", 6);
          edit_set("Password:", ddt_val(table,"Password"));
          edit_get_text("Agent Name:",name);
      edit_get_text("Password:",pass);
                if((name=="")||(pass==""))
                tl_step("name or pass is none",1,"you can't put in");
                                               
}
ddt_close(table);
如果你加入括号的话,可以写一句else的语句,这样错误和没有错误的都会列出来了
if (rc!= E_OK && rc != E_FILE_OPEN)
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
{
        ddt_set_row(table,table_Row);
       
        # Login
                set_window ("Login", 2);
                edit_set ("Agent Name:", ddt_val(table,"Agent_Name"));
                set_window ("Login", 6);
          edit_set("Password:", ddt_val(table,"Password"));
          edit_get_text("Agent Name:",name);
      edit_get_text("Password:",pass);
                if((name=="")||(pass==""))
                {
                tl_step("name or pass is none",1,"you can't put in");
                }
                else
                {tl_step("name and pass is ok",0,"you can put in");}
               
}
ddt_close(table);

xiaofang1004 发表于 2006-8-1 15:38:35

不好意思,我没有看明白?
能具体说一下吗?多谢

zhangjinyun99 发表于 2006-8-1 15:51:30

哪里不明白?
我的意思是,你可以把那个括号删除,然后保存,在进行回放看看.
不过奇怪的是,我加上那个括号也没有出现你那个问题.
最后我只是提出了一个建议,就是你可以加上一句else的语句,这样在测试结果看就更加清楚了.
再多问一句:你用的是数据驱动那个向导做的吗?

xiaofang1004 发表于 2006-8-1 16:17:47

那个参数化是用的数据驱动,
但那个IF语句是自己写的,我去掉了括号,还有有问题啊?
        # 登陆
                set_window ("登陆", 2);
                obj_type ("WindowsForms10.EDIT.app3_2",ddt_val(table,"user"));
                obj_mouse_click ("WindowsForms10.EDIT.app3_3", 25, 12, LEFT);
                obj_type ("WindowsForms10.EDIT.app3_3",ddt_val(table,"pwd"));

                if((ddt_val(table,"user")=="")||(ddt_val(table,"pwd")==""))
               
                tl_step("user or pwd is empty",1,"user or pwd should not be empty!");
               
                obj_mouse_click ("确定", 30, 16, LEFT);
       
}
ddt_close(table);
这样也会提示tl_step("user or pwd is empty",1,"user or pwd should not be empty!");
这句有语法错误啊?
我加了ELSE后,还是一样的错误啊?

zhangjinyun99 发表于 2006-8-1 16:34:42

还有一个办法,就是用insert>Function>For object/windows这个,它会替换你可以命名name and password用if((name=="")||(password==""))来代替你那句if((.........))在试一下,如果还是不行,我也没有法了

xiaofang1004 发表于 2006-8-1 16:55:57

好的,我试试,多谢了。

kolecat 发表于 2006-8-1 18:26:56

if((ddt_val(table,"user")=="")||(ddt_val(table,"pwd")==""))

这句是楼主你拷的源码么?那个括号好像是中文的, 换成英文的试试看

xiaofang1004 发表于 2006-8-2 15:26:50

不是中英文的问题啊?我改了,还是不行。
页: [1]
查看完整版本: 请帮我看看这里怎么回事?