51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: lovetest6
打印 上一主题 下一主题

GetROProperty,GetTOProperties,GetTOProperty的区别

[复制链接]

该用户从未签到

21#
发表于 2007-2-27 11:39:05 | 只看该作者

我有一个问题想问一下

我已经明白了:
GetTOProperty():取得仓库对象的某个属性的值
GetROProperty():取得实际对象的某个属性的值

但是我不明白为什么Mercury要用GetTOProperty()这个方法.
GetTOProperty()这个方法有没有什么特别的用处呢?

因为GetTOProperty()是拿到仓库对象里的有限的几个属性值,如果是仓库对象里没有出现的属性它拿到的就是空值.
而GetROProperty()则可以拿到所有属性在运行时的值.
可以说GetTOProperty()相当于是GetROProperty()的一个子集.

GetTOProperty()的属性值总是和GetROProperty()的属性值是相等的. 它们两个是不会不相等的吧.
因为仓库对象里的属性值是用来识别对象的, 所以GetROProperty()的属性值也一定会是这个GetTOProperty()的属性值.

所以我不知道为什么Mercury会有GetTOProperty()这个方法,它还有什么特别的用处吗?
或者大家有没有遇到一种情况: 用GetTOProperty()可以做一些有价值的事情?
回复 支持 反对

使用道具 举报

该用户从未签到

22#
发表于 2007-3-1 16:10:36 | 只看该作者
GetTOProperpy()的结果和GetROProperpy()并不一定是一样的
GetTOProperpy()就是你在仓库文件里设置的值,它的值可以含有通配符,可以匹配几种值,如同时匹配英文和中文

如有仓库对象JavaWindow("MyTest).JavaButton("Cancel"),设置其label属性为"Cancel|取消",这样就能通配英文和中文版本的界面
JavaWindow("MyTest).JavaButton("Cancel").GetTOProperty("label")的值,不管测试英文版还是中文版系统,都是"Cancel|取消"
JavaWindow("MyTest).JavaButton("Cancel").GetROProperty("label")的值,测英文版系统时就是"Cancel",测中文版系统时就是"取消"


GetTOProperpy确实用处不大,不像SetTOProperpy和GetROProperpy那么有用。
仓库对象的属性是自己设置的,一般没必要读取它。
不过作为接口QTP还是要提供的,可能有些特殊的地方需要用到GetTOProperpy


比如有些软件界面较乱,一些文字的大小写、前后带空格经常调整,为了兼容这些大小写和前后带空格的情况,写一个小函数,自动适应这些情况。

  
’函数功能:取Edit里的文字,能自动适应Edit前的标题的大小写和带空格的变化
Function GetEditText(EditObject)

   oldTOValue = EditObject.GetTOProperty("attached text")
   newTOValue = oldTOValue + "|" + LCase(oldTOValue) + "|" + UCase(oldTOValue) + "|" + Trim(oldTOValue)
   call EditObject.SetTOProperty("attached text", newTOValue)
   
   curText = EditObject.GetROProperty("text")

   GetEditText = curText
   
End Function
回复 支持 反对

使用道具 举报

该用户从未签到

23#
发表于 2007-3-15 10:27:59 | 只看该作者
wonderful!
虽然我不能完全明白里面的意思,但是我已经在里面获取了我要的信息了。

thanks very much!!
回复 支持 反对

使用道具 举报

该用户从未签到

24#
发表于 2007-3-19 15:51:30 | 只看该作者
yabest, thanks for your detailed description.
That's so amazing!
回复 支持 反对

使用道具 举报

该用户从未签到

25#
发表于 2007-3-27 11:01:49 | 只看该作者
实践中再去学习
回复 支持 反对

使用道具 举报

该用户从未签到

26#
发表于 2007-3-29 11:14:17 | 只看该作者
但是我们怎么知道对象都有哪些封装接口和自身接口呢?
其实很简单,用对象查看器(Object Spy)查看对象,在查看窗口里有列出这些接口,包括属性和方法。
窗口中间有选择栏让你选择Run-time Object或者Test Object,
当你选择Run-time Object时,它显示的就是对象的自身接口(自身的属性和方法)
当你选择Test Object时,它显示的就是对象的封装接口(封装的属性和方法)

使用遨游浏览器
我用SPY 察看了一下www.163.com 输入用户名那个编辑框 结果没有Run-time Object 的属性 ,是不是就不能使用.object.属性 ?
参考图片1.jpg
后来 用IE打开163的网页一试就出来了,奇怪!~
参考图片2.jpg
难道测试时只能用IE就不能用其他的浏览器么?

[ 本帖最后由 Eagle1983 于 2007-3-29 11:34 编辑 ]

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

27#
发表于 2007-3-29 11:30:30 | 只看该作者
学到了,谢谢。。。。。。。。。
回复 支持 反对

使用道具 举报

该用户从未签到

28#
发表于 2007-3-29 15:37:30 | 只看该作者
原帖由 Eagle1983 于 2007-3-29 11:14 发表

使用遨游浏览器
我用SPY 察看了一下www.163.com 输入用户名那个编辑框 结果没有Run-time Object 的属性 ,是不是就不能使用.object.属性 ?
参考图片1.jpg
后来 用IE打开163的网页一试就出来了,奇怪!~
...


估计不行,QTP内置的Web插件只是针对IE的,如果要测试遨游浏览器,可能得有相应的插件才行。
想来应该没有遨游插件吧!
回复 支持 反对

使用道具 举报

该用户从未签到

29#
发表于 2007-3-30 15:23:45 | 只看该作者
yabest 看了你的回复 深受启发阿 。送你三朵鲜花
回复 支持 反对

使用道具 举报

该用户从未签到

30#
发表于 2007-5-3 12:59:40 | 只看该作者
sdlkfj2 sdlkfj2 sdlkfj2 sdlkfj2 44
回复 支持 反对

使用道具 举报

该用户从未签到

31#
发表于 2007-5-20 18:36:09 | 只看该作者
回帖,是为了抢分
回复 支持 反对

使用道具 举报

该用户从未签到

32#
发表于 2007-5-29 15:26:20 | 只看该作者

回复 #1 lovetest6 的帖子

继续学习
回复 支持 反对

使用道具 举报

该用户从未签到

33#
发表于 2007-6-22 10:23:09 | 只看该作者
好好看一下!
回复 支持 反对

使用道具 举报

该用户从未签到

34#
发表于 2007-7-2 17:17:42 | 只看该作者
我咋越来越害怕了呢  你们咋都那么强呢  压力啊
回复 支持 反对

使用道具 举报

该用户从未签到

35#
发表于 2007-7-4 17:42:59 | 只看该作者
强!!
回复 支持 反对

使用道具 举报

该用户从未签到

36#
发表于 2007-8-1 17:00:03 | 只看该作者
太感谢了,呵呵,终于明白了,
回复 支持 反对

使用道具 举报

该用户从未签到

37#
发表于 2007-8-16 16:14:16 | 只看该作者
真是高手重重 啊  !  不怕QTP用不好了 !sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

38#
发表于 2007-8-21 16:28:52 | 只看该作者
yabest 强人
回复 支持 反对

使用道具 举报

该用户从未签到

39#
发表于 2007-8-22 18:08:57 | 只看该作者
大家讨论得很激烈。我把这些回答收藏了。谢谢。学习中。。。。。。
回复 支持 反对

使用道具 举报

该用户从未签到

40#
发表于 2007-8-23 12:07:38 | 只看该作者

回复 #14 stomic 的帖子

学习中
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-8 07:45 , Processed in 0.079349 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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