QTP--方法的重载

上一篇 / 下一篇  2009-05-31 19:39:14 / 个人分类:QTP

查看( 481 ) / 评论( 5 )
下面是我的代码:

==============================================================
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 编辑]

TAG:

walker1020的个人空间 walker1020 发布于2009-05-19 13:16:59
“重写不成功” 是什么概念?报告了什么错误?还有,close(x) 这样写对吗? 有意义吗?
fei.ge的个人空间 fei.ge 发布于2009-05-19 14:01:54
不好意思,应该是方法的重载...?

我的本意是想试试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的个人空间 fei.ge 发布于2009-05-19 14:02:52
谢谢walker1020的关注。
fei.ge的个人空间 fei.ge 发布于2009-05-19 14:12:55
这个其实也是方法重载的一个例子;
下面我做了个详细的,把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-05-20 15:05:02
高手啊,还要向前辈多多学习啊。。
我来说两句

(可选)

日历

« 2024-03-23  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 13861
  • 日志数: 27
  • 建立时间: 2007-10-23
  • 更新时间: 2015-09-18

RSS订阅

Open Toolbar