51Testing软件测试论坛

标题: QTP调用函数中已经加载的vbs文件中的函数,报“类型不匹配 8000A000D ”的错误 [打印本页]

作者: luohongliang    时间: 2014-3-28 15:55
标题: QTP调用函数中已经加载的vbs文件中的函数,报“类型不匹配 8000A000D ”的错误
最近在开发一个基于QTP的自动化框架,在实现的过程中出了一个问题,请各位高手帮忙看看。
框架基本实现如下:
①  从驱动文件(vbs脚本文件)启动,读取测试环境配置信息、QTP的配置信息及测试用例信息(其中包括测试用例名称、是否执行、对应的vbs文件路径等)。
②  驱动文件通过QTP Automation Object Model启动病运行QTP。
③  QTP根据测试用例信息加载测试用例对应的vbs文件。
④  运行该vbs文件中的函数。

目前,就是在第④步这里出现了题目中的错误
这部分的代码
Dim str
······
str = "Call " & TestCaseName & "()"       'TestCaseName是测试用例的名称,同时也是其对应的vbs文件中函数的名称。
Execute str
······
就是在Execute这一步出现了问题,总是弹出“类型不匹配”的错误信息,导致无法继续运行。

测试用例对应的vbs文件中,只有一个与测试用例名称同名的函数,没有Class。
出现问题后,一开始我以为是函数有问题,因此我创建了一个新的QTP的test,手动加载这个vbs文件后,在Action中只输入了  Call NormalLogin()  ,然后运行,却是可以运行成功的。
所以我现在不知道是什么原因。
难道说VBscript通过QTP Automation Object Model启动并运行的QTP程序,不能再调用vbs文件中的函数???
还请各位高手解惑!不胜感激!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2