top of page

DESKTOP TEST AUTOMATION

ms_windows_logo.png
appium-logo-horiz.png

Desktop Test Automation Tool Selection

There are a couple tools out there that will allow you to automate your tests against desktop applications. Currently (year 2025), the strongest and best supported one is provided by the Appium team in corporation with Microsoft. This is what I will cover in this article.

Disclaimer

Unfortunately, the official GIT repo is outdated, so it can be a tad bit difficult to start out your desktop test automation journey. That is why I decided to show an example in Java. I have implemented desktop TAF's in Java, C# .NET and python so far. It is possible to do it in many different languages, as Appium is based on Selenium. If you can implement it in one language, then you can certainly implement it in another language as well. So I don't plan to show implementation examples in .NET and python in this article, but if there's demand, I can implement those alternatives and make blog posts to demonstrate the differences.

+

Appium WindowsDriver Prerequisites

So let's look at the prerequisites that are necessary for enabling Appium to test your desktop apps for you.

  • Enable Windows Developer Mode

  • Install Windows SDK

  • Install WinAppDriver

  • Install Appium + Selenium

  • Install Accessibility Insights for Windows

WinAppDriver vs WindowsDriver

WinAppDriver and WindowsDriver are not the same! WinAppDriver is provided by Microsoft, and it enables test tools to interact with Windows applications. WindowsDriver is Appium's driver that leverages the WinAppDriver in order to interact with Windows applications, and adds the Appium/Selenium flavor to it.

Enable Windows Developer Mode

Official Microsoft article

 

  1. Open Developer settings

  2. On the For developers dialog, turn on the Developer Mode

    1. "Install apps from any source, including loose files."

  3. Read the disclaimer and click Yes to accept the change

 

In case your organization does not allow you to turn on the developer mode, then you can change it with group policy or you can change it in the registry as well.

Alternative way of enabling developer mode - Winaero article

Edit Group Policy

  1. Press WIN + R then type in gpedit.msc

  2. Go to Computer Configuration -> Administrative Templates -> Windows Components -> App Package Deployment

  3. Click "Allows development of Windows Store app."

  4. Change the default value from "Not Configured" to "Enabled"

  5. Click OK to save

Change the Registry

  1. Press WIN + R then type in regedit

  2. Go to HKLM\Software\Policies\Microsoft\Windows\Appx

    1. Copy the above path and paste it into the Registry Editor's path after Computer\ then hit enter

  3. Right-click anywhere inside the right side of the window, select New -> DWORD Value (32-bit)

  4. Rename the value to AllowDevelopmentWithoutDevLicense

  5. Open the value and change its data from 0 to 1

Install Windows SDK

Official Microsoft download site

Install WinAppDriver

Official release page for WinAppDriver

For me it installed the driver to the following folder: C:\Program Files\Windows Application Driver

Make a shortcut to your desktop, or wherever it is convenient for you.

Install Accessibility Insights for Windows

Official download site for Accessibility Insights for Windows

Setup Your Project

I'll let you decide which IDE and build tool you are using. I decided to go with VS Code and Gradle. Here's the official VS Code guide on how to set up gradle (or maven) in your Java project.

I also published a short guide in my blog:

How to Setup Gradle in VS Code

Create Your First Windows Desktop Test​​

I like to start with the most simple test case to just check if my configuration works or not.

How to Use Accessibility Insights

Shift + F9 - bring the Accessibility Insights app to the foreground or minimize it.

© 2025, Péter Földházi Jr.

bottom of page