Thursday, January 31, 2019

[CodedUI] MS batch file example to run Web Performance Test

@echo off


Rem ________________________________________________________________________________________________
Rem
Rem Select Windows Version
Rem
Rem ________________________________________________________________________________________________

rem MS Windows version 10.0.14393
rem set CURRENT_DATE=%date:~10,4%%date:~4,2%%date:~7,2%
rem MS Windows version 10.0.10586

 set CURRENT_DATE=%date:~6,4%%date:~0,2%%date:~3,2%

echo %CURRENT_DATE%

Rem ________________________________________________________________________________________________
Rem
Rem       Define Project Folders, the Exe file and Test result and logfile folders
Rem               TextExeFileProd = WebTestProd.webtest    - check Production sites only
Rem            TestExeFileAll  = WebTestAll.webtest     - check all sites including Test and Staging
Rem 
Rem ________________________________________________________________________________________________

set exeDir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE
set ProjDir=C:\TestProject

set TestExeFileProd=%ProjDir%\WebAndLoadTestProject1\WebTestProd.webtest
set TestExeFileAll=%ProjDir%\WebAndLoadTestProject1\WebTestAll.webtest

set TestResultDir=%ProjDir%\TestResults\

set TestLogDir=\WebTest\TestResults\%CURRENT_DATE%\

Echo Creating %TestLogDir%

IF NOT EXIST "%TestLogDir%" (mkdir "%TestLogDir%")

echo Project Folder= %ProjDir%


Rem ________________________________________________________________________________________________
Rem
Rem       Cleanup the subfolders in Test LOG Folder
Rem
Rem ________________________________________________________________________________________________

pushd %TestLogDir%

 FOR /D %%P IN ("*HQ*") DO ECHO DELETING "%%P" & IF EXIST "%%P" RD /S /Q "%%P"

Rem ________________________________________________________________________________________________
Rem
Rem        Cleanup Test Log Folder and delete existing files
Rem 
Rem ________________________________________________________________________________________________

Echo Cleaning up %TestLogDir%

IF EXIST "%TestLogDir%\*" ( DEL /Q "%TestLogDir%\*" )


Rem ________________________________________________________________________________________________
Rem
Rem       Execute Test for Prod and All and Create a TestResult Log file
Rem               TextExeFileProd = WebTestProd.webtest    - check Production sites only
Rem            TestExeFileAll  = WebTestAll.webtest     - check all sites including Test and Staging
Rem ________________________________________________________________________________________________

Echo Executing %TestExeFileProd%

 "%exeDir%"\MSTest.exe /testcontainer:"%TestExeFileProd%" /resultsfile:"%TestLogDir%\testResultsProd.trx" > "%TestLogDir%"\TestResultsProd_%CURRENT_DATE%.log

Echo Executing "%TestExeFileAll%"

 "%exeDir%"\MSTest.exe /testcontainer:"%TestExeFileAll%" /resultsfile:"%TestLogDir%\testResultsAll.trx" > "%TestLogDir%"\TestResultsAll_%CURRENT_DATE%.log


Rem ________________________________________________________________________________________________
Rem
Rem     Move the Test Result file to Test LOG FOLDER
Rem
Rem ________________________________________________________________________________________________

Echo Moving Test Result file to %TestLodDir%

pushd  %TestLogDir%

FOR /R "%TestLogDir%" %%X IN (WebTestProd.webtestResult) do (IF EXIST "%%X" ECHO "%%X" & IF EXIST "%%X" copy "%%X" "%TestLogDir%\")

FOR /R "%TestLogDir%" %%X IN (WebTestAll.webtestResult) do (IF EXIST "%%X" ECHO "%%X" & IF EXIST "%%X" copy "%%X" "%TestLogDir%\")


Rem ________________________________________________________________________________________________
Rem
Rem       Cleanup the subfolders in Test LOG Folder again
Rem
Rem ________________________________________________________________________________________________

pushd %TestLogDir%

 FOR /D %%P IN ("*HQ*") DO ECHO DELETING "%%P" & IF EXIST "%%P" RD /S /Q "%%P"


Rem ________________________________________________________________________________________________
Rem
Rem     Run the powershell script to send an email
Rem
Rem ________________________________________________________________________________________________

Powershell.exe -executionpolicy remotesigned -File  SendEmailWebTestResult.ps1


popd


















No comments:

Post a Comment