ITPub博客

首页 > Linux操作系统 > Linux操作系统 > (转)MSW_id一直变化,winrunner无法识别

(转)MSW_id一直变化,winrunner无法识别

原创 Linux操作系统 作者:mandy23 时间:2007-11-29 15:16:12 0 删除 编辑

我们公司做的登陆窗口的“用户名”输入框,在winrunner中取得两个属性值,MSW_id: 1377614,
MSW_class: TRzEdit。
其中msw_id的值每次打开的时候就变化,导致winrunner重放的时候不认识这个控件,请问有什么办法解决?

[@more@]

wuzhuayu 2006-7-1 14:28

可以用虚拟对象解决。
Tools->Virtual object Wizard.

今天有雾 2006-7-7 14:55

用虚拟对像不能完成解决这个问题,你需要手工修改该对象的Class,将MSW_id在这个类中去除,将这句话贴到你的脚本中,因为你修改类后,重新运行WR,会回到原来的内容,所以需要将这个class语句贴到脚本中去

guyu_susa 2006-7-10 15:46

希望该控件的位置和大小不要变

更改贵gui map里的class内容,加上location x ,location y等值,去掉msw_id。

iltest 2007-7-18 16:38

[quote]原帖由 [i]今天有雾[/i] 于 2006-7-7 14:55 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=260358&ptid=36034][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]
用虚拟对像不能完成解决这个问题,你需要手工修改该对象的Class,将MSW_id在这个类中去除,将这句话贴到你的脚本中,因为你修改类后,重新运行WR,会回到原来的内容,所以需要将这个class语句贴到脚本中去 [/quote]

这个具体是怎么做的?我去掉了MSW_id,但是"将这句话贴到你的脚本中"不知道是贴哪句话,到脚本的什么地方?

dionysus 2007-7-18 21:23

[quote]原帖由 [i]iltest[/i] 于 2007-7-18 16:38 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=614337&ptid=36034][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]


这个具体是怎么做的?我去掉了MSW_id,但是"将这句话贴到你的脚本中"不知道是贴哪句话,到脚本的什么地方? [/quote]
一般是在GUI map文件中将MSW_id这个属性去掉,换上location来定位,但是location一般无法准确给出,所以lz需要从0开始逐渐往上添加,并用show按钮确认是哪个location,让WR可以识别正确

lantianwei 2007-7-19 09:20

[quote]原帖由 [i]dionysus[/i] 于 2007-7-18 21:23 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=614772&ptid=36034][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]

一般是在GUI map文件中将MSW_id这个属性去掉,换上location来定位,但是location一般无法准确给出,所以lz需要从0开始逐渐往上添加,并用show按钮确认是哪个location,让WR可以识别正确 [/quote]
想请教一个问题:我在进行对象映射时都只是把MSW_id删掉,选中了location就直接用了,好像该location的值是自动生成的吧,我看过好多贴都说要一个一个试,但我就搞不清楚该怎么试?在哪里试?非常感谢!

iltest 2007-7-19 09:21

嗯,谢谢6楼的.这样做果然可以了.

dionysus 2007-7-19 16:15

[quote]原帖由 [i]lantianwei[/i] 于 2007-7-19 09:20 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=615029&ptid=36034][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]

想请教一个问题:我在进行对象映射时都只是把MSW_id删掉,选中了location就直接用了,好像该location的值是自动生成的吧,我看过好多贴都说要一个一个试,但我就搞不清楚该怎么试?在哪里试?非常感谢! [/quote]
一般我是将location替换id,location=..., 没有试过不指定数值是否能回放成功。貌似如果界面上的控件少就不用指定location,类似于QTP描述性编程中常用的index:=... 我见过的一般都是使用函数得到控件的index,并把这个值写到脚本中用来定位控件
大家拍砖

lantianwei 2007-7-20 09:00

非常感谢dionysus的回复,在此表示感谢!

qinliu 2007-8-8 15:58

[quote]原帖由 [i]dionysus[/i] 于 2007-7-18 21:23 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=614772&ptid=36034][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]

一般是在GUI map文件中将MSW_id这个属性去掉,换上location来定位,但是location一般无法准确给出,所以lz需要从0开始逐渐往上添加,并用show按钮确认是哪个location,让WR可以识别正确 [/quote]



我也是新学WR,正好遇到这个问题,听不太懂啊,能否把步聚说清楚点啊?非常感谢哦!

qinliu 2007-8-8 16:07

怎么做才能在识别对象时,不用class和MSW_id来识别,用label、name、attached_text等属性

fengxueren 2007-8-8 16:52

这也就是winrunner中的对象映射的机制

点击winrunner->tools-gui map configuration ,8.2版本的话点击+号,然后用hand选择你需要识别的那个控件;点击ok后,选择edit(就是删除键后面那个)
在弹出的configure class窗口中

mapped to class表示你需要把你的对象映射成那个控件,像楼上说的那个,应该可以把它映射成edit对象

然后在learned properties中选择你需要识别的属性
有可选,不用,必选3个选项

最下面你可以选择在上述属性都无法识别的情况下,是用loaction还是index来识别

点击ok就行了

如果想下次不再重复这个工作,点击configure class窗体中的paste按钮
把映射的这段话加到你脚本的最开始就ok了

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7531461/viewspace-986918/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    26
  • 访问量
    12930