51Testing软件测试论坛

标题: 急!关于对象名的参数化! [打印本页]

作者: rxiaofan    时间: 2008-1-31 17:42
标题: 急!关于对象名的参数化!
录制后,经修改,脚本如下
Window("Book1").VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit").Set sUserName       
Window("Book1").VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit_2").Set sUserPassword       
Window("Book1").VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit_3").Set sDomainName       
Window("Book1").VbWindow("VbWindow").VbWindow("VbWindow").VbButton("Next >>").Click

我现在想将Window的名字Book1进行参数化,而这个参数的取值又来自于GetExcelCaption()这个函数的返回值,这样可以吗?
我感觉应该可以的,所以就试了下。说明下我用的是9.2。
一)AppName = GetExcelCaption() ‘返回值正确
Window(AppName).VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit").Set sUserName       
Window(AppName).VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit_2").Set sUserPassword
或者
Window("title:="&AppName ).VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit").Set sUserName
Object Repository中没有更改,回放出错,信息“The "VbWindow" object was not found in the Object Repository.”

我想是不是要改Object Repository中该控件的信息,可是不知道怎么改。望高手能帮我解疑啊
作者: rxiaofan    时间: 2008-2-1 09:48
没有人回答嘛?
作者: rxiaofan    时间: 2008-2-1 11:57
这个问题自己解决了。
发现是用GetExcelCaption() 返回的值并不是“Book1”,进行一些字符串处理成“Book1”后就能执行了。而且Object Repository中的控件信息也不用改。
如果你想直接对Window name进行参数化,可以直接将Book1赋给一个变量,然后用变量代替Book1就可以了。就像:
AppName = “Book1”
Window(AppName).VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit").Set sUserName        
Window(AppName).VbWindow("VbWindow").VbWindow("VbWindow").VbEdit("VbEdit_2").Set sUserPassword
执行OK!




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