51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3805|回复: 7
打印 上一主题 下一主题

[原创] QTP中如何创建外部类的实例 ?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-7-9 11:17:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这个是别人曾经提的问题,我也碰到了同样的问题,忘大侠指点!
VBS脚本中写了个类:
Class AddCustomerEntrance
Public Sub Toolbar(menuStr)
Browser("browser").Page("title:="&PAGE_TITLE).Frame("name:="&FRame_NAME).WebElement("innertext:="&menuStr).Click
End Sub
End Class

QTP中调用:
Set a = New AddCustomerEntrance
a.Toolbar("新建")

问题:
QTP脚本运行时总是提示“类没有被定义”。如果将类定义放在QTP脚本中,可以运行。请问有什么办法在QTP脚本中调用VBS定义的类?以及怎样调用类中的
sub 过程 和 function 函数?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-7-9 13:04:49 | 只看该作者
不知道你类是写在 ACTION里面还是写在外部的VBS里面!
如果是在的话你的VBS里面就要这样写
Set a = New AddCustomerEntrance
Class AddCustomerEntrance
Public Sub Toolbar(menuStr)
Browser("browser").Page("title:="&ampAGE_TITLE).Frame("name:="&FRame_NAME).WebElement("innertext:="&menuStr).Click
End Sub
End Class
QTP action里面就这样用
CALL a.Toolbar("新建")
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-7-9 15:06:17 | 只看该作者
如果你在QTP中正确地引用了外部VBS文件,而提示该错误的话,很可能是因为你的VBS文件的格式不对,把VBS脚本拷贝到一个记事本中再保存就可以了。



推荐新书《QTP自动化测试实践》
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-7-9 15:42:46 | 只看该作者
这种问题很普遍,简单的方法就是在vbs中就实例化对象,action就直接掉方法,这样肯定没问题
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2008-7-9 17:11:00 | 只看该作者
谢谢楼上的各位兄弟,我再调试下!
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-7-10 15:08:06 | 只看该作者
原帖由 zte_boy 于 2008-7-9 15:42 发表
这种问题很普遍,简单的方法就是在vbs中就实例化对象,action就直接掉方法,这样肯定没问题


I try it. It does works correctly.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2008-7-14 18:57:42 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2011-4-5 14:22:21 | 只看该作者
找了很久,谢谢2楼的实例啊,简单易懂,呵。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-16 12:28 , Processed in 0.072446 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表