51Testing软件测试论坛

标题: 采用X,Y来确定对象 [打印本页]

作者: YapsiLee    时间: 2010-12-7 23:47
标题: 采用X,Y来确定对象
现在有5个WebEdit的属性完全一样,我要怎么来给每个对象中输入预计的值?
是否可以通过坐标属性的属性来set,具体方法是什么样的呢?
之前我也用过sendkey "TAB"来切换到其中一个输入框,并已经获取焦点,但是set时仍然会报错。。。
作者: skyzhu    时间: 2010-12-8 10:38
1. set 和焦点基本没关系,获取了焦点后用模拟输入是可以的
2. 可以在上级对象取WebEdit子对象集合
3. 可以附带类似 index属性来确认具体哪一个WebEdit (webcheckbox是肯定有index的,WebEdit 暂时没试过)
作者: aishifu1    时间: 2010-12-8 12:14
1、index属性
2、获取焦点后使用SendKeys模拟键盘输入。
Dim WshShell,Path,i
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.SendKeys "{F5}"

详细出处参考:http://www.jb51.net/article/14776.htm
作者: TIB    时间: 2010-12-8 21:53
应该不需要用到坐标定位的,应该可以用index区分开来
作者: 17800455    时间: 2010-12-9 14:47
那如果,输入框没做索引呢。怎么办。
作者: sunnyswu    时间: 2010-12-9 23:28
这个 如果固定的话,可以使用 virtual object来做
如果 使用qtp11.0 那么可以使用 参照对象来看看能不能区分开来
当然 如果对index熟悉的话, 不妨试一试,
我 对这个index不熟悉,另外最好贴图出来,这样才可以给大家更多信息
作者: 17800455    时间: 2010-12-10 10:18
这样你先录制一下,然后到对象库里去看。qtp取了哪些属性和值。你用描述性编程写qtp里的属性就行了。

只要qtp能录制,你取基本不会有问题。
作者: timfung    时间: 2010-12-14 10:06
上楼正解
作者: 43528782    时间: 2010-12-14 15:13
sendkeys “{TAB}”已经能获取焦点了
为什么不继续用sendkeys 输入内容呢?而要用set来输入内容?
set是基 ...
five3 发表于 2010-12-13 23:22



    很有深度~
作者: wolaizhinidexin    时间: 2010-12-16 11:29
本帖最后由 wolaizhinidexin 于 2010-12-16 11:34 编辑

这种情况我也遇到了,我遇到的是link
下面给一个粗略的过程,你可能需要改改,但可以参考这种方法
qtp10中
beforWebEditObj:在webEdit上一层对象
webEditProperty:WebEdit中的某个属性
propertyValue:   WebEdit中的某个属性值
indexWebEdit:    在webEdit上一层对象中的webEdit的第几个
webEditValue:    所要设置的值

Function setWebEdit(beforWebEditObj,webEditProperty,propertyValue,indexWebEdit,webEditValue)
set thisPageWebEditObj=Description.Create()
      thisPageWebEditObj("misclass").Value="WebEdit"
      thisPageWebEditObj( webEditProperty).Value=propertyValue
     获得当前对象中所有webEdit的对象,
      set setWebEditObj=beforWebEditObj.ChildObjects(thisPageWebEditObj)
     cc= setWebEditObj.count
    if cc=0 then
msgbox "没有找到"
   elseif cc>=1 then
这里可以继续判断,据我观察,虽然这几个webedit都是相同的属性,但是一般说来他们的outerhtml往往存在某个关键字与其它有不同之处,我们可以利用这点,进行更深层次的判断,这样的话,我们就可以省略indexWebEdit参数的指定了。
      setWebEditObj(indexWebEdit).Set webEditValue
end if
End Function




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