我们如何在QTP中添加多个函数库文件

时间:2013-11-28 16:10:05

标签: vbscript automated-tests qtp

比如说,我的框架工作中有20个vbs文件位于C:\ LIBS \ 我想删除所有已经关联的vbs文件,并在上述位置添加所有20个vbs。

我尝试使用以下代码获取所有文件

Set fso= CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("C:\LIBS\")
Set fc = f.files
  For Each singlefile in fc
  msgbox singlefile.name
 Next

通过这个我能够看到所有的vbs文件。但是我不知道如何使用这些文件将其与我的测试相关联。

先谢谢。

4 个答案:

答案 0 :(得分:2)

您可以使用LoadFunctionLibrary menthod加载任何vbs文件......

LoadFunctionLibrary "C:\LIBS\Library1.vbs"

您可以将其放置在所有文件上。您也可以这样做来加载多个库。

LoadFunctionLibrary "C:\LIBS\Library1.vbs", "C:\LIBS\Library2.vbs"

使用这些方法之一,您必须将此LoadFunctionLibrary代码放在任何测试代码之前运行。将此vbs文件与qtp脚本相关联,或将其放在QTP脚本中的测试代码前面。

这种方法称为动态加载函数库。

答案 1 :(得分:2)

您可以使用的另一种方法是

Set QtAp = CreateObject("QuickTest.Application")
QtAp.Open "C:\Sometest"
Set QtLib = QtAp.Test.Settings.Resources.Libraries
QtLib.RemoveAll
QtLib.Add "filepath",-1
QtAp.Test.Run

在执行测试之前,必须运行此脚本(在driverscript中)。希望这会有所帮助。

答案 2 :(得分:0)

嗨希望这可以帮助你..我刚刚修改了你的代码。看看,谢谢

Set fso= CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("C:\LIBS\")
Set fc = f.files
For Each singlefile in fc

    executeFile(singlefile.name) 

Next

Set fso= CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder("C:\LIBS\")
Set fc = f.files

For Each singlefile in fc

    LoadFunctionLibrary (singlefile.name)

Next

答案 3 :(得分:-1)

Dim App 'As Application

Set App = CreateObject("QuickTest.Application")

Set fso= CreateObject("Scripting.FileSystemObject")

Set f = fso.GetFolder("C:\Documents and Settings\Administrator\Desktop\Function Lib\")

Set fc = f.files

  For Each singlefile in fc

  'msgbox singlefile.name

App.Test.Settings.Resources.Libraries.Add(singlefile)

 Next

它将关联您的所有库文件。