Test Windows Desktop App using Appium-Compatible WinAppDriver
On This Page What is WinAppDriver?Windows Deskto
Test Windows Desktop App using Appium-Compatible WinAppDriver
While is the most popularly utilize fabric to automate Mobile Apps for Windows, Android, and iOS versions, it is imperative to know that your window desktop apps too can be automated using an Appium-compatible driver server called WinAppDriver.
Overview
What is WinAppDriver?
- Appium-compatible WebDriver server for automating Windows Desktop apps (UWP, WPF, Win32).
- Developed by Microsoft, open-source, and supports Java, Python, Ruby, C #, etc.
- Works standalone or with Appium, stable with potent community support.
WinAppDriver Key Features
- Cross-platform mechanisation for desktop, web, and peregrine apps.
- Integration-ready with CI/CD tools (Jenkins, Azure DevOps, GitHub, etc.).
- Element review via Windows SDK for quick test creation.
- Gratis to use, reduces manual testing overhead.
WinAppDriver Setup & amp; Installation
- Enable Developer Mode on Windows 10+.
- Download and install WinAppDriver.msi file.
- Run driver at127.0.0.1:4723for test executing.
- Configure Windows SDK → Inspect.exe to place UI elements.
Writing Test Scripts
- Supports Selenium/Appium-style mechanization.
- Define Desired Capabilities (app, platformName, deviceName).
- Automate real desktop apps (e.g., Windows Maps) with Java + TestNG.
- Run tests topically or integrate with CI/CD pipelines.
Business Impact
- Reduces manual testing effort for Windows desktop apps.
- Ensures consistent quality across platforms (background, web, mobile).
- Faster release through automation and parallel examination.
- Seamless desegregation with BrowserStack real device cloud for end-to-end reporting.
This clause discusses what WinAppDriver is and how it can be used to automate the examination of Windows Applications.
What is WinAppDriver?
WinAppDriver or WAD is an Appium-compatible WebDriver host that provide mechanisation service for Universal Windows Platform (UWP), Windows Presentation Foundation (UPF), and Classic Windows (Win32) applications. It follow development similar to that of Appium and. Hence, anybody have knowledge and experience act on these frameworks can easily automate Windows desktop apps using WAD without pose much effort and time into learning it.
Below are some features which make WAD a great tool for choosing your next windows apps mechanisation:
- It is acquire by Microsoft. Hence, it is very stable and provides a rich helping community to help you with any blockers or enquiry.
- It can be used straight also without to run your scripts as a standalone covering alongside using it with Appium.
- It supports so many majorly used programming lyric like Java, Python, Ruby, C #, etc.
- It can be integrated with CI/CD popular creature like Jenkins, Azure DevOps, and others.
- It is an open-source puppet that can be used for gratis.
Windows Desktop App Testing using WinAppDriver
Pro tip: Tools like SUSA can handle this autonomously — upload your app and get results without writing a single test script.
Follow the below steps to get started with the first background app automation.
Pre-requisites
- Windows PC with Windows OS version 10 or above.
- Permissions to use administrator mode.
- Any development IDE like Eclipse, Visual Studio (2015 version or above), etc.
WinAppDriver Setup and Installation
Step 1:Go to Windows settings and under theFor developerscarte, become the developer mode on
Step 2: Downloadthe Windows Application Driver (WinAppDriver) installer
Step 3: Download .msifile and install it on your scheme
Step 4:Once the installation is completed successfully, go to the following itinerary to run theWinAppDriver exe
C: \Program Files (x86) \Windows Application Driver
Step 5: Driver will run at port127.0.0.1:4723listening to the requests
Inspecting Elements using WinAppDriver
For doing element inspection for web apps, we can easily right-click on any element and get the required tags by clickinginspect. Since we need to scrutinize elements for our desktop application too, a tool will be required which can aid us with the same. Here, Windows SDK comes to our delivery which does the job very easily and quickly. Also, it is open beginning and just a click away to download.
Windows SDK shape
Step 1: Download Windows SDKfrom the official Microsoft web link. Once the installation is completed on the system, you will get the inspect exe file in the following location:
C: \Program Files (x86) \Windows Kits\10\bin\10.0.22000.0\x64
Step 2: Open the exe fileand you are done with the SDK setup. Start inspecting any desktop app element by just oscillate over it.
Read More:
Writing Test Script to Automate Test Windows App
Step 1:Create a new projection in Eclipse and configure JDK & amp; TestNG in libraries. The following habituation need to be added for Appium, Selenium, and TestNGpom.xml file.
& lt; dependencies & gt; & lt; dependency & gt; & lt; groupId & gt; io.appium & lt; /groupId & gt; & lt; artifactId & gt; java-client & lt; /artifactId & gt; & lt; version & gt; 7.3.0 & lt; /version & gt; & lt; scope & gt; examination & lt; /scope & gt; & lt; /dependency & gt; & lt; dependency & gt; & lt; groupId & gt; org.testng & lt; /groupId & gt; & lt; artifactId & gt; testng & lt; /artifactId & gt; & lt; variant & gt; 7.1.0 & lt; /version & gt; & lt; scope & gt; test & lt; /scope & gt; & lt; /dependency & gt; & lt; dependency & gt; & lt; groupId & gt; org.seleniumhq.selenium & lt; /groupId & gt; & lt; artifactId & gt; selenium-java & lt; /artifactId & gt; & lt; version & gt; 3.141.59 & lt; /version & gt; & lt; /dependency & gt; & lt; /dependencies & gt;
Read More:
Step 2: Automates the Maps Desktop App on the Windows system to find the route from the current location to the searched destination localisation using the codification written below:
parcel testing; import org.testng.annotations.AfterMethod; signification org.testng.annotations.Test; import org.testng.annotations.BeforeMethod; import java.net.MalformedURLException; importee java.net.URL; signification java.util.concurrent.TimeUnit; meaning org.openqa.selenium.Keys; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.support.ui.WebDriverWait; import io.appium.java_client.windows.WindowsDriver; public grade TestMaps {public WindowsDriver driver = null; @ BeforeMethod public void setUp () {DesiredCapabilities cap = new DesiredCapabilities (); //windows application id needs to be given to open the app. Run Get-StartApps in powershell to get all windows app ids. cap.setCapability (`` app '', '' Microsoft.WindowsMaps_8wekyb3d8bbwe! App ''); //add platformname and device name cap.setCapability (`` platformName '', `` Windows ''); cap.setCapability (`` deviceName '', `` WindowsPC ''); try {//create webdriver instance driver = new WindowsDriver (new URL (`` http: //127.0.0.1:4723 ''), cap);} catch (MalformedURLException e) {e.printStackTrace ();} //provide implicit hold of 10 seconds driver.manage () .timeouts () .implicitlyWait (10, TimeUnit.SECONDS);} @ AfterMethod public void teardown () {system.out.println (“ test run successful ”);} @ Test public void findofficeroute () {driver.findElementByName (`` Search '') .sendKeys (`` BrowserStack Mumbai ''); driver.findElementByName (`` Search '') .sendKeys (Keys.ENTER); driver.findElementByName (`` Directions '') .click (); driver.findElementByName (``, My location, ``) .click (); //Takes user ’ s current location driver.findElementByName (`` Get direction '') .click ();}}Test Result
Running the above script successfully on WAD will automate the maps and provide the way from your current position to the searched destination.
You can easily automate any windows desktop app with the assist of WinAppDriver and can hugely reduce efforts in screen your background applications manually. Also, you can get expertise in background app automation alongside working on web and mobile applications.
In suit, one is looking to test their site or apps on different browser and device, BrowserStack offers 3000+ real browsers and devices for manual and. QAs can test Android or iOS apps on thousands of real mobile devices, both latest and legacy. They can integrate seamlessly with the BrowserStack cloud via legion examine fabric –,,, or EarlGrey.
Testers can action UI Test automation in order to verify multiple aboriginal device features –,, preloaded icon,, in-app purchase, time zones, words, etc.
Simply, select the device-operating combination need and start prove. The full process is built to supply convenience, efficiency, speed, and truth to testers and developers likewise. With a wide compass of and, BrowserStack is built to not just identify bug, but to purpose them at the quickest.
# Ask-and-Contributeabout this topic with our Discord community.
Related Guides
Automate This With SUSA
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.
Try SUSA FreeTest Your App Autonomously
Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.
Try SUSA Free