51Testing软件测试论坛

标题: 如何在对象库中完整显示对象名称 [打印本页]

作者: dqf    时间: 2010-9-6 16:46
标题: 如何在对象库中完整显示对象名称
一开始还以为是可能没装NET的插件 录制时 对象可能没有细化
但后来发现 是由于对象库中的名称不能完全显示 导致以1、2、3…… 来表示了
对象库中[attach]65123[/attach]
系统对右上部分的“name”处有没有设置值 使之完全显示 不必在左边以_数字来表示了
作者: 开朗幽默    时间: 2010-9-6 21:11
这个不是名称没显示完,是你的这些WEBEDIT在录制的时候它们的名称本身都是一样的,在加到对象库的过程中,系统自动在后面加上了数字编号来区分。你可以通过更改这些WEBEDIT的名称来避免这个现象。
作者: mowandao1985    时间: 2010-9-7 11:10
楼上说得对,你可以对这些名称进行编辑,改成和页面上显示的一样就可以了。
但是不能更改控件对象库的属性值,不然你运行时可能就找不到这个对象啦
作者: dqf    时间: 2010-9-8 13:00
那为何左下方的NAME却是显示完整的呢?
作者: TIB    时间: 2010-9-8 15:07
一个是对象库给这个对象起的名字(可修改)
一个是被测试的对象自己的名字(设计时就定好了,不可改)
作者: 开朗幽默    时间: 2010-9-8 15:11
这个就不是名称是否显示完的问题,而是你的那些WEBEDIT本身的问题。他们的名称都一样,所以系统在左边自动给每个对象都增加一个数字来加以区分。这点在你进行编程的时候就能够体现,当你输WEBEDIT(时,会出现对象库中的这些WEBEDIT_X来让你选择。
作者: dqf    时间: 2010-9-9 14:51
还是不大明白
也做了个实验,用的是VB,在窗体内画了3个文本框,分别命名为:txt_name        txt_title      txt_caption
如图[attach]65195[/attach]


而我用QTP录制时得到的为:[attach]65196[/attach]

为何QTP中的对象库中的名称不是"txt_name"而是"ThunderTextBox",对象库中的名称又是如何自己命名的?
作者: kavensyw    时间: 2010-9-12 16:54
1楼的标注对象的名name和实际对象的name属性不是一回事,只不过把 对象的name属性值拿过来标注而已
但你对象name属性一致,标注对象就不好区分,所以就加了个后缀

至于楼上的你识别对象设的是用regexpwndclass识别的,你设的三个控件,是同种类型,这个字段也是一样的,
但其window id不一致,
标注对象名称时把regexpwndclass的值拿过来做名字不能唯一区分,所以又加个后缀。
至于你要找"txt_name",点+号就可以在界面中找到了,应该是一个id的值

为了方便管理,建议手动修改成容易识别的名称

总之一句话,QTP自动标注对象时,是把你的对象的一个属性值拿来做标注的name,如果重复就加个数字后缀

[ 本帖最后由 kavensyw 于 2010-9-12 17:07 编辑 ]




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2