luohongliang 发表于 2014-3-28 15:55:16

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文件中的函数???
还请各位高手解惑!不胜感激!:handshake
页: [1]
查看完整版本: QTP调用函数中已经加载的vbs文件中的函数,报“类型不匹配 8000A000D ”的错误