1- Uploading an attachment in QC
localFilePath="C:\Documents and Settings\jagarwal\Desktop\To Do List.xlsx"
Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
qtApp.TDConnection.Connect "http://gls1qaqcr01:8080/qcbin/", "TCCA", "TCBS", "jagarwal", "Password1", False ' Connect to Quality Center
Set TDConnection = QCUtil.TDConnection
Set treeManager = TDConnection.TreeManager
Set folder1 = treeManager.nodebypath(QCfolderName)
Set strAtt = folder1.attachments
Set strAtta = strAtt.AddItem(Null)
strAtta.FileName = localFilePath
strAtta.Type = 1
strAtta.Post()
strAtta.Refresh
Set TDConnection=nothing
Set treeManager=nothing
Set folder1 =nothing
2- Removing an attachment from QC
AttachmentName="To Do List.xlsx"
Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
qtApp.TDConnection.Connect "http://gls1qaqcr01:8080/qcbin/", "TCCA", "TCBS", "jagarwal", "Password1", False ' Connect to Quality Center
Set treeManager = TDConnection.TreeManager
Set folder1 = treeManager.nodebypath(QCfolderName)
intNdId = folder1.NodeID
Set strAtt = folder1.attachments
Set AttachFilter = strAtt.Filter
AttachFilter.Filter("CR_REFERENCE") = "'ALL_LISTS_"& intNdId & "_" & AttachmentName & "'"
Set attachList = strAtt.NewList(AttachFilter.Text)
Set theAttachment=attachList.item(1)
strAtt.RemoveItem (theAttachment.ID)
'strAtta.Refresh
Set TDConnection=nothing
Set treeManager=nothing
Set folder1 =nothing
3- Downloading a file from QC to local file system
Public Function GetFolderAttachmentPath(TDAttachmentName, TDFolderPath)
Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
qtApp.TDConnection.Connect "http://gls1qaqcr01:8080/qcbin/", "TCCA", "TCBS", "jagarwal", "Password1", False ' Connect to Quality Center
Set objSysTreeNode = objTreeManager.NodeByPath(TDFolderPath)
Set objAttachmentFactory = objSysTreeNode.Attachments
Set objAttachmentFilter = objAttachmentFactory.Filter
intNdId = objSysTreeNode.NodeID
objAttachmentFilter.Filter("CR_REFERENCE") = "'ALL_LISTS_" & intNdId & "_" & TDAttachmentName & "'"
Set objAttachmentList = objAttachmentFilter.NewList
If objAttachmentList.Count > 0 Then
Set objAttachment = objAttachmentList.Item(1)
objAttachment.Load True, ""
strPath = objAttachment.FileName
Else
Reporter.ReportEvent micFail,"Failure in library function 'GetFolderAttachmentPath'", "Failed to find attachment '" & TDAttachmentName & "' in folder '" & TDFolderPath & "'."
End If
GetFolderAttachmentPath = strPath
set objTreeManager = Nothing
set objSysTreeNode = Nothing
set objAttachmentFactory = Nothing
set objAttachmentFilter = Nothing
End Function
4- Logging a new defect in QC
Function autoDefectLogging(strTestCaseNameSheet)
Dim qcServer
On error resume next
qcServer = "http://corswdcsapp13.corp.pg.eon.net:8080/qcbin"
qcUser = "S24856"
qcPassword = "Pa55w0rd"
qcDomain = "energy_WHOLESALE"
qcProject = "QC_EET_ENDUR_Programme"
'-------------------------------------------------------------------------
' This routine makes the connection to the gobal TDConnection object,
' and connects the user, password,domain & project specified in ' GlobalVariable.txt
'-------------------------------------------------------------------------
Set tdc = CreateObject("TDApiOle80.TDConnection")
tdc.InitConnectionEx qcServer
tdc.Login qcUser, qcPassword
tdc.Connect qcDomain, qcProject
'Verify connection establishment
If Err.Number <> 0 Then
Reporter.ReportEvent micFail, "Error occured in Function- 'Connection could not be established","Error description: "& Err.Description & vblf & "Error number: " & Err.Number
End If
'-------------------------------------------------------------------------
' This routine makes bug object to auto log defect in Quality Center
' Variables used are defined in GlobalVariable.txt
'-------------------------------------------------------------------------
Set BugFactory = tdc.BugFactory
Set Bug = BugFactory.AddItem (Nothing)
Bug.Summary = strTestCaseNameSheet
Bug.Status = "New"
Bug.AssignedTo = qcUser
Bug.DetectedBy = qcUser Bug.Post
'Release all created objects
Set BugFactory = Nothing
Set Bug = Nothing
If tdc.Connected Then
tdc.Disconnect
End If
If tdc.LoggedIn Then
tdc.Logout
End If
tdc.ReleaseConnection
Set tdc = Nothing
'Disable error handling
On Error GoTo 0
End Function
5- Retrieving all defects from QC in an excel sheet
Public Function ConnectToQC(ByVal ServerName, ByVal Domain, ByVal Project)
Dim QCServer, UserName, Password, QCConnection
QCServer = "http://" & ServerName & "/qcbin"
UserName = "alice_qc"
Password = ""
Set QCConnection = CreateObject("TDApiOle80.TDConnection")
QCConnection.InitConnectionEx QCServer
QCConnection.login UserName, Password
QCConnection.Connect Domain, Project
Set ConnectToQC = QCConnection
End Function
' Connect to the Quality Center Server.
Dim QCConnection
Set QCConnection = ConnectToQC("<MyQCServer>", "DEFAULT", "QualityCenter_Demo")
' Get a list of all the defects.
Dim BugFactory, BugList
Set BugFactory = QCConnection.BugFactory
Set BugList = BugFactory.NewList("")
' Open a new Excel worksheet.
Dim Excel, Sheet
Set Excel = CreateObject("Excel.Application")
Excel.WorkBooks.Add()
Set Sheet = Excel.ActiveSheet
' Set the column names.
Sheet.Cells(1, 1).Value = "Bug Id"
Sheet.Cells(1, 2).Value = "Summary"
Sheet.Cells(1, 3).Value = "Detected By"
Sheet.Cells(1, 4).Value = "Priority"
Sheet.Cells(1, 5).Value = "Status"
Sheet.Cells(1, 6).Value = "Assigned To"
' Retrieve the values of each bug.
Dim Bug, Row
Row = 2
For Each Bug In BugList
Sheet.Cells(Row, 1).Value = Bug.Field("BG_BUG_ID")
Sheet.Cells(Row, 2).Value = Bug.Summary
Sheet.Cells(Row, 3).Value = Bug.DetectedBy
Sheet.Cells(Row, 4).Value = Bug.Priority
Sheet.Cells(Row, 5).Value = Bug.Status
Sheet.Cells(Row, 6).Value = Bug.AssignedTo
Row = Row + 1
Next
' Save the result.
' Open a new Excel worksheet.
Dim Excel, Sheet
Set Excel = CreateObject("Excel.Application")
Excel.WorkBooks.Add()
Set Sheet = Excel.ActiveSheet
Excel.ActiveWorkbook.SaveAs("c:\QualityCenter_Demo_DEFECTS.xls")
Excel.Quit
' Cleanup.
Set Excel = Nothing
Set QCConnection = Nothing
6- Running a Test Set from QC
' Get the test set tree manager from the test set factory
'tdc is the global TDConnection object.
Set qtApp = CreateObject("QuickTest.Application") ' Create the Application object
qtApp.TDConnection.Connect "http://gls1qaqcr01:8080/qcbin/", "TCCA", "TCBS", "jagarwal", "Password1", False ' Connect to Quality Center
Set tdc=QCutil.TDConnection
Set TSetFact = tdc.TestSetFactory
Set tsTreeMgr = tdc.TestSetTreeManager
nPath = "Root\" & Trim(tsFolderName)
Set tsFolder = tsTreeMgr.NodeByPath(nPath)
'Search for the test set passed as an argument to the example code
Set tsList = tsFolder.FindTestSets(tSetName)
If tsList.Count > 1 Then
print "FindTestSets found more than one test set: refine search"
elseIf tsList.Count < 1 Then
print "FindTestSets: test set not found"
End If
Set theTestSet = tsList.Item(1)
Print theTestSet.ID
'Start the scheduler on the local machine
Set Scheduler = theTestSet.StartExecution("")
'Set up for the run depending on where the test instances are to execute.
Select Case runWhere
Case RUN_LOCAL
'Run all tests on the local machine
Scheduler.RunAllLocally = True
Case RUN_REMOTE
'Run tests on a specified remote machine
Scheduler.TdHostName = HostName
End Select
'Run the tests
Scheduler.run
'Get the execution status object
Set execStatus = Scheduler.ExecutionStatus
For i = 1 To execStatus.Count
Set TestExecStatusObj = execStatus.Item(i)
Print "Iteration " & i & " Status: " & " Test " & TestExecStatusObj.TestId &" ,Test instance " & TestExecStatusObj.TestInstance & " ,order " & TestExecStatusObj.TSTestId & " " & TestExecStatusObj.Message & ", status=" & TestExecStatusObj.Status
Next
QTP & QC Online training is available from very select websites. Hyderabadsys is One of the Best Online Training Website. Since QTP is a specialized domain it has lesser number of professionals compared to some of the more common IT domains. And fewer among these professionals have the time and inclination to share their knowledge. But there are some and these are the people that offer the best QTP help resources.QTP &QC online training offers you everything in this domain but especially a lot of practical resources.
ReplyDeleteQTP&QC Online Training
Just found your post by searching on the Google, I am Impressed and Learned Lot of new thing from your post.
ReplyDeletekissanime alternatives