请帮我看看这里怎么回事?
一运行就提示这个错误,我不知是哪里错了。 能不能不要贴这么大的图,你们提交BUG都用这格式么.... if 判断好象有误,小括号少了一个,估计问题出在这里 if((ddt_val(table, "user") =="")||(ddt_val(table, "pwd" ==""))应该是:
if((ddt_val(table, "user") =="")||(ddt_val(table, "pwd") =="")) 是恩,下次可以直接把代码贴上吧,图片打开好慢~~
那个if语句第二个等号前面少了个括号
下面的tl_step语句怎么看起来不象分号结尾呀? 多谢,可是我加上了那个括号,
可是还有提示错误,由26行变为27号了。一样的错误 我试过了,代码如下,两种方法都可以.
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); 不好意思,我没有看明白?
能具体说一下吗?多谢 哪里不明白?
我的意思是,你可以把那个括号删除,然后保存,在进行回放看看.
不过奇怪的是,我加上那个括号也没有出现你那个问题.
最后我只是提出了一个建议,就是你可以加上一句else的语句,这样在测试结果看就更加清楚了.
再多问一句:你用的是数据驱动那个向导做的吗? 那个参数化是用的数据驱动,
但那个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后,还是一样的错误啊? 还有一个办法,就是用insert>Function>For object/windows这个,它会替换你可以命名name and password用if((name=="")||(password==""))来代替你那句if((.........))在试一下,如果还是不行,我也没有法了 好的,我试试,多谢了。 if((ddt_val(table,"user")=="")||(ddt_val(table,"pwd")==""))
这句是楼主你拷的源码么?那个括号好像是中文的, 换成英文的试试看 不是中英文的问题啊?我改了,还是不行。
页:
[1]