The renewal maintenance has officially ended for Progress iMacros effective November 30, 2023.
This Wiki site will also no longer be moderated from the Progress side.
Thank you again for your business and support.
Sincerely, The Progress Team
self-test.ps1
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This script runs all available demo macros for the specified browser, e.g. iMacros Browser, iMacros for Internet Explorer or iMacros for Firefox, and creates a test report as PowerShell grid table (exported also as a xml file).
There are two options to run macros in the following script: 1. You can ran all macros in a selected folder. 2. You can specify the macros names in the PowerShell script directly.
This script can also serve as template for your own web application regression test scripts.
<# .Synopsis iMacros Demo Macros Self-Test Script by iOpus/Ipswitch Inc. #> # Region Using [void][reflection.assembly]::LoadWithPartialName("System.Windows.Forms") # endregion # Region Main code Write-Host "Start Self-Test.ps1" -ForegroundColor Yellow $iim1 = new-object -com "imacros" # Specify macros folder $iMacrosPath = "C:\Users\ipswitch\Documents\iMacros\Macros\Demo"; # Specify the browser, e.g. CR: "-Cr" $Browser="-ng" # Specify the macro(s) to be run or just run all macros in the selected folder $macro = @() $macro = Get-ChildItem $iMacrosPath -Filter *.iim -Name # runs all the macros in the folder #$macro += "Filter.iim" #$macro += "SavePdf.iim" $countMacros = $macro.Length # Start browser $i = $iim1.iimOpen($Browser, "false") Write-Host "Start browser, return message:" $i $iim1.iimGetErrorText() -ForegroundColor Green # Execute macro and store the result Write-Host "Execute test macros" -ForegroundColor Green $ResultTable=@() $m = 0 foreach ($element in $macro) { #Create new row in the table $ResultRow = New-Object PSObject Add-Member -InputObject $ResultRow -MemberType NoteProperty -Name "No" -Value "" Add-Member -InputObject $ResultRow -MemberType NoteProperty -Name Time -Value "" Add-Member -InputObject $ResultRow -MemberType NoteProperty -Name "Macro Name" -Value "" Add-Member -InputObject $ResultRow -MemberType NoteProperty -Name "Return Result" -Value "" Add-Member -InputObject $ResultRow -MemberType NoteProperty -Name "Return Message" -Value "" #Retrieve results #Macro No. $ResultRow."No" = $m + 1 # Date $ResultRow.Time = Get-Date -Format HH:mm:ss $ResultRow."Macro Name" = $macro[$m] # Return Result $ResultRow."Return Result" = $iim1.iimPlay("$iMacrosPath\"+$macro[$m]) # Return Message $ResultRow."Return Message" = $iim1.iimGetErrorText() #Save the row to the result table $ResultTable += $ResultRow $m+=1 } #Create GridView of the results $ResultTable | Export-Clixml -Path $PSScriptRoot\Self-Test-Results.xml $Date = (Get-Date -Format f) Import-Clixml -Path $PSScriptRoot\Self-Test-Results.xml | Out-GridView -Title "iMacros Demos Self Test Results ($Date)" Write-Host "End Test" -ForegroundColor Yellow #End $i = $iim1.iimClose()