摘选自:[url]http://blog.51testing.com/pcl/archive/2006/08/21/1599.html[/url]


 
今天帮一个加拿大的朋友解决VB调用QTP的问题,自己写了一个Demo 。
下边是源代码
1.新建工程,引入QuickTest Professional 8.0 object library
2.编写代码如下:
Private strScriptName As String
Private strRunScript As String

Private Sub cmdAddScript_Click()
   strScriptName = InputBox("请输入QuickTestPro脚本的路径以及名字", "Select Script")
   lstQtpScript.AddItem strScriptName
   strScriptName = ""
End Sub
Private Sub cmdRunScript_Click()
If strRunScript = "" Then
   MsgBox "please select you want to a running script in listbox"
Else
    Dim qtApp As QuickTest.Application ' Declare the Application object variable
    Dim qtTest As QuickTest.Test ' Declare a Test object variable
    Dim qtResultsOpt As QuickTest.RunResultsOptions ' Declare a Run Results Options object variable
   
    Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
    qtApp.Launch ' Start QuickTest
    qtApp.Visible = True ' Make the QuickTest application visible
   
    ' Set QuickTest run options
    qtApp.Options.Run.CaptureForTestResults = "OnError"
    qtApp.Options.Run.RunMode = "Fast"
    qtApp.Options.Run.ViewResults = False
   
    qtApp.Open strRunScript, True   ' Open the test in read-only mode
   
    ' set run settings for the test
    Set qtTest = qtApp.Test
    qtTest.Settings.Run.IterationMode = "rngIterations" ' Run only iterations 2 to 4
    qtTest.Settings.Run.StartIteration = 2
    qtTest.Settings.Run.EndIteration = 4
    qtTest.Settings.Run.OnError = "NextStep" ' Instruct QuickTest to perform next step when error occurs
   
    Set qtResultsOpt = CreateObject("QuickTest.RunResultsOptions") ' Create the Run Results Options object
    qtResultsOpt.ResultsLocation = strRunScript + "\Res1" ' Set the results location
   
    qtTest.Run qtResultsOpt ' Run the test
   
    'MsgBox qtTest.LastRunResults.Status ' Check the results of the test run
    qtTest.Close ' Close the test
    qtApp.Quit  'Close QuickTestPro
   
    Set qtResultsOpt = Nothing ' Release the Run Results Options object
    Set qtTest = Nothing ' Release the Test object
    Set qtApp = Nothing ' Release the Application object
    strRunScript = ""
 End If
 
End Sub
Private Sub Form_Load()
  strScriptName = ""
  strRunScript = ""
End Sub
Private Sub lstQtpScript_Click()
  strRunScript = lstQtpScript.Text
End Sub
由于不是具体讲vb的使用所以里面如何新建工程等都省略掉了,如果大家有兴趣可以自己找相关书籍学习。
以上代码在vb6.0 winxp sp2调试通过。