51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4054|回复: 5
打印 上一主题 下一主题

[原创] 小弟刚学QTP不久,遇到一个类型不匹配的问题,希望各位大侠还有zzbbxx112帮忙求解

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-4-9 16:23:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在学习QTP的封装,从zzxxbb112的一篇文章http://www.51testing.com/html/16/n-197416-2.html 中学习经验。遇到了一个问题:
我在自己创建了一个LoginStuff类,然后通过该类中的方法CreateLogin()来创建一个LoginStuff对象实例,以便在QTP运行时提供使用。如下:
  1. Public Function CreateLogin()
  2. '                Dim objLogin
  3.                 Set objLogin=New LoginStuff
  4.                 Set CreateLogin= objLogin
  5.         End Function
复制代码


然后将包含此代码的.vbs文件加载到QTP中,接着在QTP专家视图中写如下代码:
  1. Call do_login()

  2. Public Function do_login()
  3.         Dim intStatus, objLogin
  4.         Set objLogin=CreateLogin()
  5.         If objLogin.Init() Then
  6.                 objLogin.CreateIns()
  7.         End If       
  8. End Function
复制代码


然后运行QTP,当运行到Set objLogin=CreateLogin()的时候,会报错,类型不匹配: 'CreateLogin' Line (5): "Set objLogin=CreateLogin()".  按我的理解do_login()方法中的objLogin应该是一个空对象(或者是个objcet类型的对象),那么Set objLogin=CreateLogin(),是不是要将objLogin强制转换类型成LoginStuff类型呢?这个问题小弟实在无法解决,请各位能帮帮我,不胜感激。
如图:

附上自己写的LoginStuff.vbs文件,这样也许能让大家更清楚些。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2011-4-9 17:05:02 | 只看该作者
如果我把所有的vbs文件中的类全部粘贴到专家视图中,再运行的话,就会报错“变量未定义: 'CreateLogin'”,也就是说CreateLogin()方法是没有被正确调用。可是,我实在不知道该如何去正确调用这个CreateLogin()方法了。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2011-4-9 17:39:52 | 只看该作者
我找到原因了,我把CreateLogin()方法放进了LoginStuff类里面,如果把它拿到类外面来,貌似就能运行了,但不知道为什么可以这样做?
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2011-4-11 09:26:45 | 只看该作者
你要先实例化类
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2011-4-11 13:25:46 | 只看该作者
建议LZ先阅读下QTP帮助文档中VBS部分关于class的介绍,了解下使用class的各种语法.
另外新手学习的侧重点建议先放在能让一个脚本稳定完成测试任务上,完成这一步然后再去学习各种结构.
前者是用QTP工作所必须的,后者是可选的
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2011-4-11 16:23:20 | 只看该作者
回复 5# hsjzfling
好的,谢谢你的建议!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-15 09:06 , Processed in 0.077260 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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