51Testing软件测试论坛
标题:
QTP--方法的重载
[打印本页]
作者:
fei.ge
时间:
2009-5-19 10:56
标题:
QTP--方法的重载
下面是我的代码:
==============================================================
SystemUtil.CloseProcessByName("iexplore.exe")
SystemUtil.Run "iexplore.exe","www.baidu.com",,,3
Set Bro = description.Create()
Bro("title").value = ".*"
Function Myclose(obj,x)
MyClose=obj.close(x)
msgbox"Myclose"
End Function
RegisterUserFunc "Browser","Close","Myclose"
Browser(Bro).Close
UnRegisterUserFunc "Browser","Close"
==============================================================
QTP应该支持方法的重写,但是Browser的close方法为什么不能重写?
[
本帖最后由 fei.ge 于 2009-5-19 17:07 编辑
]
作者:
walker1020
时间:
2009-5-19 13:16
“重写不成功” 是什么概念?报告了什么错误?还有,close(x) 这样写对吗? 有意义吗?
作者:
fei.ge
时间:
2009-5-19 14:01
不好意思,应该是方法的重载...?
我的本意是想试试QTP中的方法的重载功能,脚本的目的是:用myclose函数代替close动作。
由于只看过一点这方面的资料,所以模拟实践了一下。
经过修改,我的脚本可以运行了。
=================================================
SystemUtil.CloseProcessByName("iexplore.exe")
SystemUtil.Run "iexplore.exe","www.baidu.com",,,3
Set Bro = description.Create()
Bro("title").value = ".*"
Function Myclose(obj)
MyClose=obj.close
msgbox"Myclose"
End Function
RegisterUserFunc "Browser","Close","Myclose"
Browser(Bro).Close
UnRegisterUserFunc "Browser","Close"
=================================================
[
本帖最后由 fei.ge 于 2009-5-19 14:23 编辑
]
作者:
fei.ge
时间:
2009-5-19 14:02
谢谢walker1020的关注。
作者:
fei.ge
时间:
2009-5-19 14:12
这个其实也是方法重载的一个例子;
下面我做了个详细的,把set和close方法进行了重载。
============================================================================
SystemUtil.CloseProcessByName("iexplore.exe")
SystemUtil.Run "iexplore.exe","www.baidu.com",,,3
Set Bro = description.Create()
Bro("title").value = ".*"
Set Pag = description.Create()
pag("title").value = ".*"
Set webedit1 = description.Create()
webedit1("name").value = ".*"
Function MySet(obj,x)
MySet=obj.set(x)
msgbox "Myset"
End Function
Function Myclose(obj)
MyClose=obj.close
msgbox"Myclose"
End Function
RegisterUserFunc "WebEdit","Set","MySet"
Browser(Bro).Page(Pag).WebEdit(WebEdit1).Set "你好"
UnRegisterUserFunc "WebEdit","Set"
RegisterUserFunc "Browser","Close","Myclose"
Browser(Bro).Close
UnRegisterUserFunc "Browser","Close"
============================================================================
[
本帖最后由 fei.ge 于 2009-5-19 14:24 编辑
]
作者:
aspchenping
时间:
2009-5-20 15:05
高手啊,还要向前辈多多学习啊。。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2