Introduction to WinAppDriver — Free Test Automation Tool | Devstringx Technologies
Microsoft Windows Application Driver (called WinAppDriver) is a service to support Windows Application tools similar to Selenium.
It is supported on machines running Windows 10 operating system (Home and Pro) and Windows Server 2016, and it supports all Windows applications based on: WinForms (Windows Forms), WPF (Windows Presentation Foundation), UWP (Universal Windows Platform) and the classic Win32.
WinAppDriver enables Appium by using its API calls which were added in Windows 10 to test any windows based application.
It is such an awesome tool and the following feature uses this tool leader in its field of automation for desktop applications.
- It is free tool
- It is developed by Microsoft
- Most important feature it uses the WebDriver protocol
It means as in the WebDriver environment(Selenium),same with WinAppDriver’s environment we will also identify elements with findElement, we will also work with Page Object and we will also use the same methods such as: clear, sendKeys, click, etc like web/mobile automation.
Configuring the WinAppDriver Environment
- Should have any Windows 10 PC.
- Java 8 and above
- Any IDE Eclips ,Visual Studio 2015+
- You should have Admin rights in your PC
- Enable developer Mode
- Download and install Windows-10-SDK https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk
- Download and Install latest Windows Application Driver can be found: https://github.com/Microsoft/WinAppDriver/releases/
After download, Navigate to the folder location C:\Program Files (x86)\Windows Application Driver and run “WinAppDriver.exe”. This is your prerequisite before running WinAppDriver code.
There are some tools which actually help and support inspecting objects properties in windows application. Go to Inspect.exe as WinAppDriver GitHub recommends Microsoft Native tool.
Navigate to Windows SDK folder -
C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x64
one example, opened a calculator and inspect the element, please refer the below snapshot
With WinAppDriver we can use a variety of programming languages. In this example, I am using Java with Testng. Below is the code I used to launch the session to the Calculator application:
Once we reach the step of initiating the driver, we need to turn to the local address (in our example) with port 4723, which is the default port of Appium Server. Now, once our driver has been initiated, we can start working with it in order to execute methods from the familiar WebDriver protocol:
WinAppDriver supports a number of standard Appium Capabilities. It is an easy to use and possible option for other existing Paid tools in the market which helps to implement and integrate one platform and one solution for your automation projects. This tool will also help when we have to perform Windows Automation.
Leverage the expertise of our QA Consultants to ramp up your QA process.