51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4908|回复: 10
打印 上一主题 下一主题

[讨论] 在一个VBS中写了一个Class,调用时发现找不到这个class,为何?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-10-29 12:25:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在一个vbs中写了一个class bb,也写了一个function,把这个vbs加入了Test resource

然后在qtp中进行调用,set a = new bb,报找不到class bb,可是调用同一个vbs 中的function却是成功的,为什么?

把这个class直接写在qtp中是可以执行的
'------------
aa.vbs

class bb
.
.
.
End class

function cc
.
.
.
end function


在QTP的expertview中:
Set a = New bb       -------------报错,Class bb未定义
a.adduser
set a = nothing

call cc()    -----------执行正确
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-10-29 16:45:12 | 只看该作者
没有遇到这个问题的嘛?? 那大家有谁清楚Qtp setting的resouce里的vbs列表是怎么被调用的?执行顺序如何?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-10-29 17:36:19 | 只看该作者

回复 2# 的帖子

resources 都是在执行QTP中的代码之前就执行的,相当于C中的include吧

没遇到你的问题。。你把逻辑再整理下看看吧,调用Class应该是没什么问题的。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-10-29 20:02:18 | 只看该作者
都可以执行的 你还是查看下 你的class 和执行流程吧
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-10-29 20:02:35 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-1-8 11:56:38 | 只看该作者
楼主们好,我也出现了这个问题,说我Class未定义, 但是我的Class应该是没问题的呀.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2008-1-8 13:22:08 | 只看该作者
可以有四种方法使用类实例。

1、直接在action脚本中定义类,然后action中任何地方都可以实例化类
2、用executefile引入类定义文件,然后action中任何地方都可以实例化类
3、在function lib中定义类,并实例化类,然后再action中直接使用类实例
4、在function lib中定义类,并定义一个实例化类的函数,然后再action中调用该函数对类进行实例化
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-1-8 14:33:44 | 只看该作者
原帖由 gy21st 于 2008-1-8 13:22 发表
可以有四种方法使用类实例。

1、直接在action脚本中定义类,然后action中任何地方都可以实例化类
2、用executefile引入类定义文件,然后action中任何地方都可以实例化类
3、在function lib中定义类,并实例化类 ...


推荐用方法一,我用过,Class可以正常运行。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-1-8 15:41:20 | 只看该作者
原帖由 gy21st 于 2008-1-8 13:22 发表
可以有四种方法使用类实例。

1、直接在action脚本中定义类,然后action中任何地方都可以实例化类
2、用executefile引入类定义文件,然后action中任何地方都可以实例化类
3、在function lib中定义类,并实例化类 ...


很详细哦,这个在帮助文档里有提到过吗?
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2008-1-8 16:52:42 | 只看该作者
原帖由 heqingbluesky 于 2008-1-8 14:33 发表


推荐用方法一,我用过,Class可以正常运行。



方法一应该是最不能推荐的
公用class一般用第四种方法比较好。
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2008-1-8 20:49:44 | 只看该作者
原帖由 gy21st 于 2008-1-8 16:52 发表



方法一应该是最不能推荐的
公用class一般用第四种方法比较好。


对,如果是公用的,当然放到LIB里面最后,方便以后调用;如果不是公用的,就可以用方法一.
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-22 16:54 , Processed in 0.084076 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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