diff --git a/.pipelines/InstallWinAppDriver.ps1 b/.pipelines/InstallWinAppDriver.ps1 new file mode 100644 index 0000000000..a6b84834e0 --- /dev/null +++ b/.pipelines/InstallWinAppDriver.ps1 @@ -0,0 +1,15 @@ +$ProgressPreference = 'SilentlyContinue' + +$WinAppDriverDownloadUrl = "https://github.com/microsoft/WinAppDriver/releases/download/v1.2.1/WindowsApplicationDriver_1.2.1.msi" + +# Download WiX binaries and verify their hash sums +Invoke-WebRequest -Uri $WinAppDriverDownloadUrl -OutFile "$($ENV:Temp)\WindowsApplicationDriver_1.2.1.msi" +$Hash = (Get-FileHash -Algorithm SHA256 "$($ENV:Temp)\WindowsApplicationDriver_1.2.1.msi").Hash +if ($Hash -ne 'a76a8f4e44b29bad331acf6b6c248fcc65324f502f28826ad2acd5f3c80857fe') +{ + Write-Error "$WinAppDriverHash" + throw "WindowsApplicationDriver_1.2.1.msi has unexpected SHA256 hash: $Hash" +} + +# Install WinAppDriver +Start-Process -Wait -FilePath "$($ENV:Temp)\WindowsApplicationDriver_1.2.1.msi" -ArgumentList "/install /quiet" diff --git a/.pipelines/ci/templates/run-ui-tests-ci.yml b/.pipelines/ci/templates/run-ui-tests-ci.yml index 529c8bb75a..e65ca4b3cd 100644 --- a/.pipelines/ci/templates/run-ui-tests-ci.yml +++ b/.pipelines/ci/templates/run-ui-tests-ci.yml @@ -42,6 +42,12 @@ jobs: - task: VisualStudioTestPlatformInstaller@1 displayName: Ensure VSTest Platform + - task: PowerShell@2 + displayName: Download and install WinAppDriver + inputs: + targetType: filePath + filePath: '$(build.sourcesdirectory)\.pipelines\installWinAppDriver.ps1' + - task: ScreenResolutionUtility@1 inputs: displaySettings: 'optimal'