51Testing软件测试论坛

标题: 请大家帮我看下代码是否正确 [打印本页]

作者: lixnyq    时间: 2010-2-5 10:41
标题: 请大家帮我看下代码是否正确
设置一个函数,将对象库进行参数化,然后由其他程序调用该函数,但是总提示错误。请看以下代码:
Function SelectRFQNo(link,frame)
   Dim RFQ_Number
   RFQ_Number = datatable.RawValue("RFQno",dtGlobalSheet)
   browser("OfficeMax").Page("OfficeMax_RFQ").Frame("topFrame").Link("RFQ").click
   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("topFrame").Link("text:=" &link).click
   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").exit
   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").WebEdit("sRfqNo").Set RFQ_Number
   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").Link("Search").Click

   If Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").Link("text:=" & RFQ_Number).Exist(1) Then
           Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").Link("text:=" & RFQ_Number).click
    else
    msgbox "Don't have the No. you want"
End If
End Function


请看提示信息截图
在线等答案
作者: yujie6832    时间: 2010-2-5 10:47
意思是鉴别不了这个控件,很明显,你的描述性编程没有描述全面,如果LINK控件有多个关键属性需要描述,而你现在只描述了TEXT属性,那就会识别不了
作者: 鹭岛    时间: 2010-2-5 11:02
鉴别不了这个控件
作者: lixnyq    时间: 2010-2-5 11:28
恩,上面问题是我识别对象错误。谢谢各位。
还有一个问题。frame可以进行参数化吗?还是以上代码,我将对象库中的title属性,手动进行修改了。可以这样操作吗?sRfqNo在对象库中有获取到。为什么查不到呢?
运行,提示错误。

[ 本帖最后由 lixnyq 于 2010-2-5 11:29 编辑 ]
作者: gold_85    时间: 2010-2-5 11:59
w你的Frame 用描述性编程,,WebEdit不要用描述性编程吗..

我也是新人,不知道说得有没有问题
作者: lixnyq    时间: 2010-2-5 13:42
标题: 回复 5# 的帖子
用描述性编程也查找不到。提示:
Cannot find the "[ WebEdit ]" object's parent "[ Frame ]" (class Frame). Verify that parent properties match an object currently displayed in your application.

Function file: C:\RFQ\SelectRFQ.vbs
Line (10): "   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").WebEdit("name:=sRfqNo","html tag:=INPUT").Set RFQ_Number".
作者: onlonely    时间: 2010-2-5 13:59
1,Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("topFrame").Link("text:=" &link).click
描述的这个对象无法正确找到唯一对象
2,Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").WebEdit("sRfqNo").Set RFQ_Number
任何父对象使用了描述性编程,那么其子对象也必须使用描述性编程
显然你这段话梅满足这个说明
作者: lixnyq    时间: 2010-2-5 14:02
标题: 回复 7# 的帖子
2。即使使用描述性编程
  Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").WebEdit("name:=sRfqNo","html tag:=INPUT").Set RFQ_Number
提示一下信息:
Cannot find the "[ WebEdit ]" object's parent "[ Frame ]" (class Frame). Verify that parent properties match an object currently displayed in your application.

Function file: C:\RFQ\SelectRFQ.vbs
Line (10): "   Browser("OfficeMax").Page("OfficeMax_RFQ").Frame("title:=" &frame,"name:= mainFrame").WebEdit("name:=sRfqNo","html tag:=INPUT").Set RFQ_Number".

请问为什么?父对象设置有问题吗?

[ 本帖最后由 lixnyq 于 2010-2-5 14:10 编辑 ]
作者: lixnyq    时间: 2010-2-9 13:30
请各位帮忙解决下啊!如何识别对象库中的frame?
作者: fqcd163    时间: 2010-2-10 10:46
可能是对象的属性没有唯一的识别出来此对象呀,可以在后面加INDEX尝试一下吧




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