采用complied Module录制脚本后,使用 win_exists函数检测打开窗口,返回值为:-1001
以wr的例子为例,进行登陆窗口的录制,录制时的参数设置为:在GUI Map file per test模式下,选择test propertis ->test type 为complied Module进行脚本的录制,录制好脚本后再进行脚本的修改,把它定制为一个Open函数,然后再进行调用。在执行该函数时,用win_exists()函数检测,win_exists返回值为:E_NOT_IN_MAPPING。修改map 录制的模式为Global,同样修改脚本,执行时仍存在该问题。请问我得操作那存在问题?
附脚本如下:
static path =getenv("M_ROOT") & "\\samples";
static app = "flight\\app\\flight4a.exe";
static rc;
public function open(in app_path)
{
report_msg("path:" & app_path);
if(app_path=="")
app_path = path & "\\" & app;
rc=invoke_application(app_path,"","", SW_SHOW);
set_window ("Login", 4);
if( win_exists("Login")==E_OK)
{
edit_set ("Agent Name:", "Nancy");
obj_type ("Agent Name:","<kTab>");
password_edit_set("Password:", "kzptnyoslzjsaz");
button_press ("OK");
rc = set_window ("Flight Reservation", 70);
if(rc != E_OK)
return (E_GENERAL_ERROR);
}
else
report_msg("open fail");
} E_NOT_IN_MAPPING -10011 Cannot find window or object in the GUI map. 原帖由 生如火花 于 2006-4-19 08:50 发表
E_NOT_IN_MAPPING -10011 Cannot find window or object in the GUI map.
这点我知道,但是我不知道引起这个问题的原因是什么?我采用的是GUI Map file per test格式,它在打开脚本的时候应该自动调用map文件的呀? 说明你的当前窗口不在GUI MAP中,你可能载入了MAP,但跟当前的窗口的描述肯定不一样。 楼上的,在你调用这个函数之前,有call gui_load 函数把需要的gui file加载进来吗? 采用Global gui map file 模式,进行窗口的识别,然后再进行脚本的编辑后,该问题解决了。
页:
[1]