Showing posts with label keyword driven. Show all posts
Showing posts with label keyword driven. Show all posts

Tuesday

On demand Testing Framework - Keyword Driven

What this program will do : it will read the Yes flag and then run the QTP on the particular machine. Which is given into the column "Where want to Run PATH - QC or any other Path"
Prerequisite: Might be DCOM setting need to do for remote execution.

Run prompt > dcomcnfg > Component service > Computer > My computer > DCOM config > right click on QuickTest Professional Automation > security > add the name of user for alll three customize radio button from which you want to run the QTP scripts.

Steps:
Design the Exel with coulmn
Testcasename Where want to Run PATH - QC or any other Path Run On demand When You want to run AM/PM Enviorment URL Resultant Command TSR Location USER


Sample:

Testcasename Where want to Run PATH - QC or any other Path Run On demand When You want to run AM/PM Enviorment URL Resultant Command TSR Location USER
TC_Login shukr02-xp YES Now PM www.Build1.com C:\Automation\TestSuite
TC_CreatRequest Load Sharing Machine NO Now AM www.Build1.com C:\Automation\TestSuite
TC_AmendRequest Load Sharing Machine NO Now PM www.Build3.com C:\Automation\TestSuite
TC_DO_Question Load Sharing Machine NO Now AM www.Build4.com C:\Automation\TestSuite
TC_PutRecommendation Load Sharing Machines NO Now AM www.Build1.com C:\Automation\TestSuite
TC_LogIncident Load Sharing Machine NO Now AM www.Build1.com C:\Automation\TestSuite
TC_resubmit Incident Load Sharing Machine NO 10:20 AM www.Build2.com C:\Automation\TestSuite
TC_SendEmail Subject\QTPFolder\Automation Suite NO 10:34 PM www.Build2.com C:\Automation\TestSuite
TC_LogtheBug0 alara01-xp YES Now AM www.Build2.com \\alara01-xp\Automation\TestSuite
TC_LogtheBug1 alara01-xp NO Now AM www.Build2.com \\alara01-xp\Automation\TestSuite
TC_LogtheBug Load Sharing Machines NO Now AM www.Build2.com C:\Automation\TestSuite
EOF EOF EOF EOF EOF EOF EOF EOF EOF



Select Task
QTP Automation YES
CURL Automation - Sheet 2 NO
Build Deployment - Sheet 3 NO


Macro to run this Code:

'OnDEmandAutomation ("C:\AutomationTesting\TestSuite.xlsm")
Sub OnDEmandAutomation()

'Shell Environ$("COMSPEC") & " /k C:\AutomationTesting\StartAutomation.bat"

Dim tNum, tLoc(100), tCase(100), tTime(100), tTimeAMPM(100), tEnv(100), tpth(100)
APath = "C:\AutomationTesting\TestSuite.xlsm"
tNum = 0

Dim rowCount
rowCount = 2

Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = False
xlApp.Workbooks.Open APath

'xlApp.ScreenUpdating = False
'Set objSheet=xlApp.Workbooks(APath).worksheet("Sheet1")
Set objSheet = xlApp.ActiveWorkbook.Worksheets(1) ' Take Active WorkBook




screenRow = 0

For rowNumber = 2 To 100

screenRow = screenRow + 1

If objSheet.Cells(rowNumber, 1) = "EOF" Then
Exit For

Else
If objSheet.Cells(rowNumber, 3) = "YES" Or objSheet.Cells(rowNumber, 1) = "EOF" Then
tCase(tNum) = objSheet.Cells(rowNumber, 1).Value
tLoc(tNum) = objSheet.Cells(rowNumber, 2).Value
tTime(tNum) = objSheet.Cells(rowNumber, 4).Value
tTimeAMPM(tNum) = objSheet.Cells(rowNumber, 5).Value
tEnv(tNum) = objSheet.Cells(rowNumber, 6).Value
tpth(tNum) = objSheet.Cells(rowNumber, 7).Value


For rt = 0 To 0

'sComp = tLoc(tNum)
'Set WMIobj = GetObject("winmgmts:\\" & sComp & "\root\cimv2")
'Set IEExp = WMIobj.ExecQuery("Select * from Win32_Process Where Name = 'QTPro.exe'")
'MsgBox IEExp.Count
'For Each IEx In IEExp
' IEx.Terminate()
'Next
'Set WMIobj = GetObject("winmgmts:\\" & sComp & "\root\cimv2")
' Find All the iexplore.exe processes
'Set IEExp = WMIobj.ExecQuery("Select * from Win32_Process Where Name = 'iexplore.exe'")
'For Each IEx In IEExp
' IEx.Terminate()
'Next

'Shell Environ$("COMSPEC") & " /k C:\AutomationTesting\LaunchQTP.bat"
'wscript.exe "C:\AutomationTesting\Testrun.vbs"
'If tLoc(tNum) <> "shukr02-xp" Then
'staf_command(tNum)="Staf" & tLoc(tNum) & "process start command" QTPro.exe
Set qtApp = CreateObject("QuickTest.Application", tLoc(tNum)) ' tLoc(tNum) Create the Application object
qtApp.Launch ' Start QuickTest
qtApp.Visible = True ' ' Make the QuickTest application visible
qtApp.Open tpth(tNum), False
qtApp.Test.Run
'qtApp.Test.Close ' Close the test
qtApp.Quit
Set qtApp = Nothing

'Else
'staf_command(tNum)="Staf" & tLoc(tNum) & "process start command" QTPro.exe
'Set qtApp1 = CreateObject("QuickTest.Application") ' Create the Application object
'qtApp1.Launch ' Start QuickTest
'qtApp1.Visible = True ' ' Make the QuickTest application visible
'qtApp1.Open tpth(tNum), False
'qtApp1.Test.Run
'qtApp.Test.Close ' Close the test
'qtApp1.Quit
'Set qtApp1 = Nothing
'End If



Next


'qtApp.Quit ' Exit QuickTest

'Set qtApp = Nothing ' Release the Application object

tNum = tNum + 1


'tNum = tNum + 1
'msgBox "Testcase" & testCase
End If
End If
Next

xlApp.Quit

KillProcessEXCEL = "EXCEL.EXE"
Set ProcessList2 = GetObject("winmgmts://.").InstancesOf("win32_process")
For Each Process In ProcessList2
If Process.Name = KillProcessEXCEL Then
Process.Terminate
End If
Next

'Call AttachHTMLAsMailContent("Team-Picasso-QA123", "shukr02", "alara01", "Automation Completed", "http://result.com")

End Sub


'Function AttachHTMLAsMailContent(sSendTo, sSendToCC, sSendToBCC, sSubject, sHtmlPath)

'Dim objOutlook
'Dim objOutlookMsg
'Dim olMailItem

' Create the Outlook object and the new mail object.
'Set objOutlook = CreateObject(Outlook.Application)
'Set objOutlookMsg = objOutlook.CreateItem(olMailItem)

' Define mail recipients
'objOutlookMsg.To = sSendTo
'objOutlookMsg.CC = sSendToCC
'objOutlookMsg.BCC = sSendToBCC

' Body of the message

'With objOutlookMsg
'Set fso = CreateObject(Scripting.FileSystemObject)
'Set ts = fso.OpenTextFile(sHtmlPath, 1)
'strText = ts.ReadAll
'.HTMLBody = strText
'.Display
'End With

' Send the message
'objOutlookMsg.Send
'Wait (3)

' Release the objects
'Set objOutlook = Nothing
'Set objOutlookMsg = Nothing

'End Function