Microsoft has added the ability for developers to run automated UI tests with desktop applications on Azure DevOps as part of their continuous integration (CI) process.
Automated tests are an important part of continuous integration, and typically run every time there is a code change to ensure that the update does not break anything. Developers have already had the ability to run UI tests using the WinAppDriver service on Windows 10 PCs, but Microsoft is now making these a part of the automated CI pipeline on Azure DevOps.
To enable this, Microsoft has updated some of its hosted agent types – virtual machines running on Azure used for testing – with support for interactive mode and the addition of WinAppDriver, which executes the UI test commands. The HostedVS2017 and HostedVS2019 agents have been updated accordingly. Both agents are included for free in the base Azure Pipelines plan, Microsoft said.
These changes are necessary because the machine running the tests must be in an interactive state, which would normally mean the operating system has a logged in user and is listening for user input. Setting up a private agent in Azure DevOps with this configuration was possible, but it would have required significant manual configuration by the customer.
On top of this, Microsoft said that it has now added a task in Azure Pipelines for easy addition of UI tests plus test configuration options.
Microsoft is apparently eating its own dogfood by using these UI tests running in Azure DevOps as part of the development process for the recently open-sourced Microsoft Calculator project.