51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2662|回复: 11
打印 上一主题 下一主题

怎样识别下面控件?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-4 15:02:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.在图1中单击project-0147右键,出现图2。
2.当移动鼠标到“添加”上,则会出现图3。
我想实现过程:“添加”--“文档”。可是这个过程在WR context 下录制不到!!!
图2,用GUI Spy (window)识别出来的属性为:
{
class: object,
MSW_id: 0,
location: 1
}
我把属性添加到gui中。把“添加”所在的菜单命名为“一级菜单”。
list_select_item ("SysTreeView32_2", "Project-0147", RIGHT);#这句是录制的。   
编写脚本
set_window("一级菜单",1);
win_wait_info("一级菜单","displayed",1,40);
win_mouse_click("一级菜单",10,10,LEFT);
可是总是告诉找不到"一级菜单“,可是在GUI Map Editor中能highlight。
为什么用GUI Spy (window)识别出来的 class会是 object?
请问遇到这种情况,我应该怎么做?
不胜感激!!!

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

2#
发表于 2007-9-4 16:08:09 | 只看该作者
1.首先以下脚本应该这样写:
win_wait_info("一级菜单","displayed",1,40);
set_window("一级菜单",1);
win_mouse_click("一级菜单",10,10,LEFT);
2.你的情况应该是没有加载插件,所以导致菜单无法识别
3.其实该菜单是MICSOFT的一种特殊窗体,所以可以用window可以识别到
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-9-4 16:30:49 | 只看该作者
对,我是这样写的:
win_wait_info("一级菜单","displayed",1,40);
set_window("一级菜单",1);
win_mouse_click("一级菜单",10,10,LEFT);
刚才调换了一下位置
怎样加载插件呢?有一定难度
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2007-9-4 16:37:06 | 只看该作者
是不是在File-->Test Properties-->Add- ins里面
我已经勾选了ActiveX controls和Visual Basic
问题会出在哪里呢?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-9-4 18:22:58 | 只看该作者
不是的,插件是在启动时加载的。你选择tools--general option--startup--display addin。。然后重启WR,会出现让你选择的插件的
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2007-9-5 09:09:11 | 只看该作者
对,我按照你说的,已经选择了插件ActiveX controls和Visual Basic,问题没有得到解决?
我现在真的特别迷惑?问题出在哪里?
是不是应该修改一下“一级菜单”的物理描述?
{
class: object,
MSW_id: 0,
location: 1
}
但是我也不知道怎样修改?
请赐教!!谢谢了。
急!!!!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-9-5 09:15:45 | 只看该作者
你把直接录制的语句给我看下,然后虽然你加载了插件,但有可能这些插件对该被测软件都是不识别的,也就是跟没加一样。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2007-9-5 09:21:25 | 只看该作者
list_select_item ("SysTreeView32_2", "Project-0147", RIGHT); # Item Number 0;
wait(1);
win_wait_info("一级菜单","displayed",1,40);
set_window("一级菜单",1);
win_mouse_click("一级菜单",10,10,LEFT);

win_wait_info("一级菜单","displayed",1,40);
有时就会出错,有时不会。找不到一级菜单。
win_mouse_click("一级菜单",10,10,LEFT);
有时会提示找不到一级菜单,有时会说参数超出范围。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2007-9-5 09:23:08 | 只看该作者
关于“一级菜单”的语句都是手写的,录制不上去。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-9-5 09:33:12 | 只看该作者
用下以下脚本:
rc=obj_exists("一级菜单",3);
printf(rc);
obj_wait_info("一级菜单","displayed",1,40);
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-9-5 11:36:06 | 只看该作者
斑竹:lantianwei

用这段脚本
rc=obj_exists("一级菜单",3);
printf(rc);
不行吧,因为他这是右键一个下拉菜单,上面这段代码执行后会弹出一个窗口,这样winrunner就无法继续回到原来的那个窗体上了吧。我建议用下面这段代码:
if(obj_exists("一级菜单")==E_OK)                
     report_msg("1111111111111111111111");
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-9-5 12:17:08 | 只看该作者

回复 #11 snoopyzxbc 的帖子

呵呵 我也没试过 让dss试下吧
还有非常感谢你的指正!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-30 00:34 , Processed in 0.105683 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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