51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2077|回复: 9
打印 上一主题 下一主题

[原创] [描述性变成问题]对象属性识别错误问题(急)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-8-22 11:04:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教:

    附图中,需要识别Webedit控件,进行输入,但失败
    语句是这样的:
   
    Browser("Name:=Sign Up").Page("Title:=Sign Up).WebEdit("type:=text","name:=user[username]","html tag:=INPUT").set "123456"
   
    无法识别出唯一的WebEdit
    只有循环页面中所有的对象,确定需要的对象为item(14),并且高亮(highlight)显示确认过,请问如何读出此对象的属性,而不是通过“object repository”或“object spy”
(现在替代的方法是,把item(14).set "123456"直接设值,这样的话,如果页面的元素很多的话,就很头晕了)

请教高手,或者有其他办法实现!我现在无法通过上面的语句识别出.

通过QTP中object repository获取此对象,也是以上3个属性的,为什么我也用这3个属性就识别不出
附图


[ 本帖最后由 lhjtc8257 于 2008-8-22 11:26 编辑 ]

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

2#
发表于 2008-8-22 11:24:27 | 只看该作者
这个是因为对象库在忽悠人。
对象库说只用那3个属性,但其实它会是参照其它的属性。例如坐标之类的...
所以你只通过对象库的高亮可以显示出来,不说明你拿它的属性就能够让它显示出来。

所以,照你这个情况,你要么就直接使用对象库。
要么就在描述里面加多个index进去。
而且有可能是因为你的“name”的value是一个变化值来的。
Browser("Name:=Sign Up").Page("Title:=Sign Up).WebEdit("name:=user[username]")
不行就用这个
Browser("Name:=Sign Up").Page("Title:=Sign Up).WebEdit("index:=...")。
因为webedit已经是默认了html tag为input,以及它的type是text,所以你的那些是没有必要加进去的。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-8-22 11:25:05 | 只看该作者
http://bbs.51testing.com/thread-123509-1-2.html

这个你或者可以看看。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2008-8-22 11:28:12 | 只看该作者
原帖由 假装不在 于 2008-8-22 11:24 发表
Browser("Name:=Sign Up").Page("Title:=Sign Up).WebEdit("index:=...")


那index的value是什么呢???
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2008-8-22 11:48:34 | 只看该作者

回复 4# 的帖子


这个是它的标示顺序。
如果你只通过index标示,找到对象比较容易点。
如果你非要用描述,那也可以,至于你要知道value,其它方法和你说太长了,告诉你个比较土的方法:
1,添加对象到对象库中。
2,msgbox browser().page().webedit().getroproperty("index")


大家别丢东西,我不是忽悠你,是你非要用描述,哪么你现在知道它的value了就可以用了。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2008-8-22 13:19:32 | 只看该作者
不好意思,还是不太清楚,我没看到属性中有,index这个,怎么办?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2008-8-22 13:58:47 | 只看该作者
非常感谢
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-8-22 15:25:58 | 只看该作者
问题没那么复杂,实际原因是WebEdit("name:=user[username]")这个描述性属性中有特殊字符[],QTP默认是启用正则表达式的,而很不巧,[]属于正则表达式的特殊字符,将之转义,改为
WebEdit("name:=user\[username\]")
即可
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-8-22 15:40:27 | 只看该作者

回复 8# 的帖子


忽略了这个问题。强兮
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2008-8-22 16:05:47 | 只看该作者
通常Browser和Page一层,我不去用描述性
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 17:06 , Processed in 0.075244 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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