51Testing软件测试论坛

标题: 代码中的parent有什么用途,编译出错了?请教大家:) [打印本页]

作者: Coffey111111    时间: 2006-12-20 13:53
标题: 代码中的parent有什么用途,编译出错了?请教大家:)
Dim a
Public Function CheckObjectDesription(parent, descr)
Dim oDesc
' Create description object
Set oDesc = Description.Create()
arProps = Split(descr, ",")
For i = 0 To UBound(arProps)
arProp = Split(arProps(i), ":=")
    If UBound(arProp) = 1 Then
      PropName = Trim(arProp(0))
      PropValue = arProp(1)
      oDesc(PropName).Value = PropValue
    End If
Next

' Get all child objects with the given description
Set children = parent.ChildObjects(oDesc)

If children.Count = 1 Then
CheckObjectDesription = "Object Unique"
msgbox CheckObjectDesription
ElseIf children.Count = 0 Then
CheckObjectDesription = "Object Not Found"
msgbox CheckObjectDesription
Else
CheckObjectDesription = "Object Not Unique"
msgbox CheckObjectDesription
End If
End Function


CheckObjectDesription a,"I,love,you"

大家能帮看看这个代码,我出错了,有提示“缺少对象: 'parent'
Line (17): "Set children = parent.ChildObjects(oDesc)". “
,不能通过?
作者: xiaonan    时间: 2006-12-20 14:01
你从哪里找来的?估计是不完整的吧?
作者: Coffey111111    时间: 2006-12-20 16:49
是在帮助里的函数,函数能运行成功,但是想调用函数就出错了,我不知道那个parent参数是什么类型的?
作者: denisye    时间: 2006-12-20 21:53
Parent是Object类型

你的调用语句
CheckObjectDesription a,"I,love,you"
两个参数都用得不对

这个函数是用来查看在一个父对象(Parent)中,附合描述(descr)的子对象是否唯一
父对象一般可以是Browser对象、Page对象、WebTable对象等
descr的格式在函数里是规定好的:(你的"I,love,you"让我开心了很久^_^)
“:=”的左边是属性名,右边是属性的值
“,”号是不同属性之间的分隔符
例:如果你想查一个Browser里面有是不是只有一个没有被Checked的WebCheckBox对象
Set Bro=Browser()
Descr="micclass:=WebCheckBox,checked:=0"
CheckObjectDesription(Bro,Descr)
作者: Coffey111111    时间: 2006-12-21 13:00
Descr="micclass:=WebCheckBox,checked:=0"是什么意思呀?起了什么作用的呢?我在运行你给的代码时也出错了,提示“对象不支持此属性或方法: 'parent.ChildObjects'”,在Line (21): "Set children = parent.ChildObjects(oDesc)". sdlkfj1
作者: Coffey111111    时间: 2006-12-21 13:01
你给的解释能接受,不过你说的一句话不能接受,“你的"I,love,you"让我开心了很久^_^”sdlkfj9
不过还要谢谢斑竹~~sdlkfj3
作者: Coffey111111    时间: 2006-12-21 14:02
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours").Check CheckPoint("Welcome: Mercury Tours")
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours").WebEdit("userName").Set "Coffey111111"
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "458a1f324eec5b8516c41afea29f050d7817b1821ab7"
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours").Image("Sign-In").Click 23,5
Browser("Book a Flight: Mercury").Page("Find a Flight: Mercury").Check CheckPoint("Find a Flight: Mercury")
Browser("Book a Flight: Mercury").Page("Find a Flight: Mercury").Image("findFlights").Click 32,13
Browser("Book a Flight: Mercury").Page("Select a Flight: Mercury").Check CheckPoint("Select a Flight: Mercury")
Browser("Book a Flight: Mercury").Page("Select a Flight: Mercury").Image("reserveFlights").Click 39,4
Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2").Check CheckPoint("Book a Flight: Mercury_2")
Set Bro=Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2")
Descr="micclass:=WebCheckBox,checked:=0"
CheckObjectDesription Bro,Descr
Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2").WebEdit("passFirst0").Set "Coffey"
Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2").WebEdit("passLast0").Set "Coffey"
Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2").WebEdit("creditnumber").Set "8888888888888888"
Browser("Book a Flight: Mercury").Page("Book a Flight: Mercury_2").Image("buyFlights").Click 44,12
Browser("Book a Flight: Mercury").Page("Flight Confirmation: Mercury").Check CheckPoint("Flight Confirmation: Mercury")
Browser("Book a Flight: Mercury").Page("Flight Confirmation: Mercury").Image("home").Click
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours_2").Check CheckPoint("Welcome: Mercury Tours_2")
Browser("Book a Flight: Mercury").Page("Welcome: Mercury Tours_2").Sync

我这样又试了下,通过了,没有错误,但是程序运行出的结果不是预料中的,是提示 "Object Not Found",但是实际在Book a Flight: Mercury网页中是有两个WebCheckBox的呀?为什么结果不是"Object Not Unique"呢?请指教~~
作者: denisye    时间: 2006-12-21 14:19
我只是打个比方.............
你的程序里,我猜把checked:=0这个去掉的话,就会出现Object Not Unique了吧
多思考,多尝试
作者: Coffey111111    时间: 2006-12-21 14:56
谢谢斑竹呀~~




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