Open devkeydet opened 7 years ago
We already have automated ui testing in the reference app: https://github.com/devkeydet/CrmAsyncRequestResponseSampleV2/tree/master/UIAutomationTests
However, there is a known issue with https://github.com/Microsoft/EasyRepro/ when executing a headless test with the phantomjs driver: https://github.com/devkeydet/CrmAsyncRequestResponseSampleV2/issues/23
See: https://github.com/Microsoft/EasyRepro/issues/47
Once the issue is resolved, we'll update one of the release builds to show how to run the ui automation test.
Two options: -Spin up our own agent with a browser installed and use the browser driver (adds complexity) -Wait until phantomjs is working
@devkeydet I believe there's another working option you can use today.
Microsoft.Dynamics365.UIAutomation.Browser.BrowserOptions
now supports headless for Chrome, which works in a hosted build agent:
public static class TestSettings
{
public static BrowserOptions Options { get { return _options; } }
private static BrowserOptions _options = new BrowserOptions
{
BrowserType = BrowserType.Chrome,
PrivateMode = true,
FireEvents = true,
Headless = true
};
}
Then in your build definition, just install Chrome before running your UI tests by running a PowerShell script task:
$Path = $env:TEMP;
$Installer = "chrome_installer.exe";
Invoke-WebRequest "http://dl.google.com/chrome/install/375.126/chrome_installer.exe" -OutFile $Path\$Installer;
Start-Process -FilePath $Path\$Installer -Args "/silent /install" -Verb RunAs -Wait;
Remove-Item $Path\$Installer
https://github.com/microsoft/easyrepro