vbscriptqtphp-quality-center

Upload a file to a specific folder in QC via QTP script


Duting an automation I get to save the file locally and then i would need to upload it to a specific location in my QC project (in order to retrieve it again later), using a QTP script.

Any ideas on how to do this?


Solution

  • Google is your friend. For example, the following script from http://h30499.www3.hp.com/t5/Quality-Center-Support-and-News/How-to-upload-a-any-type-of-file-to-quality-center-using-QTP/td-p/5297523#.UfpIs5JM_eQ looks like an answer and is one of the first hits of googling "upload file qc qtp":

    Dim localFolderPath
    localFolderPath = "Local folder path of library files"
    call UploadFilesToQC("Subject\BPT RESOURCES\QC Folder Name", localFolderPath )
    
    Public Function UploadFilesToQC(strQCPath,strFilesystemPath)  
        Dim fileCount, timeNow, timeOld, timeDiff
        fileCount = 0
        'Get QC connection object
        Set QCConnection = QCUtil.QCConnection
        'Get Test Plan tree structure
        Set treeManager = QCConnection.TreeManager
        Set node = treeManager.NodeByPath(strQCPath)
        Set AFolder = node.FindChildNode("Library Files")  ' Library Files folder Name in QC
        set oAttachment = AFolder.attachments
        timeOld = Now
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set oFolder = fso.GetFolder(strFilesystemPath)
        Set oFiles = oFolder.Files
        'Iterate through each file present in File System path
        If oFiles.count >0 Then
        For Each oFile in oFiles
            Set attach = oAttachment.AddItem(Null)
            attach.FileName = oFile.Path
            attach.Type = 1
            attach.Post()
            fileCount = fileCount +1
            Set attach = nothing
        Next
        timeNow = Now
        timeDiff =     timeNow - timeOld
    'Time required to upload all files to QC
        Reporter.ReportEvent micDone,"Time required to upload : ", "'" & timeDiff & "' minutes."
    'Total Files count uploaded to QC
        Reporter.ReportEvent micDone,"Total files uploaded : ", "'" & fileCount & "' files uploaded."
        else
            Reporter.ReportEvent micFail,"File not found", "No file found at path: " & strFilesystemPath
        End If
    End Function