51Testing软件测试论坛
标题:
描述性编程的问题??
[打印本页]
作者:
xiasan2004
时间:
2007-12-10 14:43
标题:
描述性编程的问题??
我有点奇怪这么一个问题,我也试着想写一些描述性编程的语句
可是我每次找属性的时候都不知道怎么确定我所指定的属性是唯一性的
用spy看的话会找到一些属性,感觉是通用的属性,比如
Dialog("Regexpwndtitle:=Login").WinEdit("Attached text:=Agent Name:").Set "Holly"
Dialog("Regexpwndtitle:=Login").WinEdit("Attached text:=Password:").Set “Mercury”
Dialog("Regexpwndtitle:=Login").WinButton("Class Name:=WinButton", "text:=Cancel").Click
其中的Attached text,Regexpwndtitle换成别的如text ,title也没有问题的,反正是五花八门的,不知道是怎么给这些属性定义的属性名的??
[
本帖最后由 xiasan2004 于 2007-12-10 17:35 编辑
]
作者:
yzem99
时间:
2007-12-10 15:16
用spy就可以看到一个控件所得到的所有属性名。
而默认情况下是根据object identification里面定义的一些属性去辨别一个控件的。
对于描述性编程是根据你提供的属性去辨别的,到底要加多少个属性在一个对象里面,标准是要能唯一地辨别他就行。
不知道这样说对不对?
作者:
hsjzfling
时间:
2007-12-10 15:31
标题:
回复 1# 的帖子
请注意属性名称的大小写
作者:
xiasan2004
时间:
2007-12-10 17:35
你说的这个问题是回答了描述性编程所应遵循的标准,是如何做的问题。关键我不知道如何去唯一确定这个是唯一,因为用spy去看的时候,一些值的定义是缺省的如上图中所看到的一些属性,能看出什么名堂吗?
作者:
jinsen
时间:
2007-12-10 18:02
个人觉得这里的“唯一”应该是相对的。QTP是通过控件的属性来确定这一控件的。如果是同一类的控件,那么他们的所拥有的属性就是相同的。可以通过例如“ID”,这种在编程的时候必须是“唯一”的属性的来判断;但是,由于编程规范的问题,并不能指望诸如“ID”的属性一定是被定义的。这时候,就只能依靠其他的多个属性来确保这个“唯一”。
作者:
mqymqy
时间:
2007-12-10 20:49
程序界面上都有哪些控件呢!
如果只有一个按钮,那么用一个普通的属性就可以唯一的确定。
有两个的话,这两个总不能是一个名字。
作者:
zhou840401
时间:
2007-12-11 09:54
如果你已经判断所要描述性编程的对象的类别,如楼主当中的winbutton,那class name这个属性就是多余的啦,我学得用spy工具查看的工具未必全部都能够用来描述对象,qtp运行的时候好像有一些是不会识别的.可以看看qtp对象库中捕捉对象主要用了那些属性.
作者:
xiasan2004
时间:
2007-12-11 11:12
标题:
回复 7# 的帖子
你说的正是我想要说的,我基本是通过对象库中qtp录制的属性来看自己使用什么属性的
单用spy去看过,我还是不知道去用那个属性,感觉spy查出来的太多太杂,感觉这个使用属性要靠经验去做的,又找不着好一点的例子去看看,具体是怎么去做的,,茫然啊 !!!!!!!!!
作者:
hsjzfling
时间:
2007-12-11 12:14
Dialog("Regexpwndtitle:=Login").WinEdit("Attached text:=Password:").Set “Mercury”
这句中将“Mercury”改为"Mercury"即可
[
本帖最后由 hsjzfling 于 2007-12-11 12:19 编辑
]
作者:
xiasan2004
时间:
2007-12-11 12:24
哦,你看的仔细啊,我原来改过这个,放到qtp上一眼就看得见,这次只是复制一下原来那个代码,没有改变,呵呵
作者:
hsjzfling
时间:
2007-12-11 12:25
原帖由
hsjzfling
于 2007-12-10 15:31 发表
请注意属性名称的大小写
好久不用描述性编程,记忆都出差错了~~
更正下,属性名称大小写没啥关系~~~
作者:
hsjzfling
时间:
2007-12-11 12:30
标题:
回复 8# 的帖子
使用什么属性其实关系不大,只要能将对象唯一识别出来就行了,个人习惯:如果能用一个属性唯一识别,那就只使用一个属性;优先使用强制属性,最后考虑index属性(遍历的时候除外)
作者:
walker1020
时间:
2007-12-11 22:22
采用描述性编程,这个确实是需要有一定的经验地。建议多去看QTP的帮助和别人写的代码。在这个论坛上,描述性编程的代码也不少呀
作者:
walker1020
时间:
2007-12-11 22:23
当然,也需要有一定的理论指导,描述性编程的语法、格式等你也要知道呀
作者:
muquanyifan
时间:
2007-12-13 17:20
个人感觉还可以和开发配合,开发用到的控件一般有一个唯一识别码,这个详细的design文档里面应该有.各个程序和系统的
习惯不一样.
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2