WPF GUI Testing

Squish for Windows is a tool for WPF test automation. Automate tests for GUI applications based on the Windows Presentation Foundation (WPF), the Microsoft .NET framework.

The success of a test automation effort depends on the set of UI elements supported by the testing tool. For WPF Test Automation Squish for Windows includes support for the controls listed below.

WPF-specific Features

  • Full support for standard WPF controls (Buttons, Labels, Item Views, Menus, Tabs etc.)
  • Dedicated support for Microsoft controls (Ribbon, BusyIndicator, ColorPicker etc.)
  • Dedicated support for DevExpress WPF controls
  • Supports both XAML as well as C# GUIs
  • Full access to native .NET API on all controls
  • Supports .NET3 and later
  • Supports applications running on Windows 7 or later
Sample set of testable WPF controls

Sample set of testable WPF controls

Other Features

  • No modifications to application under test required
  • Object-based as well as image-based object identification
  • Supports debug as well as release builds
  • Remote testing of applications and multi-application tests
  • Embedded web content testable through combination with Squish/Web


Not willing to write any scripts from scratch? No problem! The built-in script recorder will create them for you. Including an interactive creation of verifications for individual properties, screenshots, tables and visual layout.

Five scripting languages are available to choose from: JavaScript, Perl, Python, Ruby and Tcl. Pick the language that suites you best. Be it a matter of taste or the wish to integrate with existing scripting frameworks.

The scripting can also be hidden under the hood when doing testing the BDD-style. In that case the tests themselves are described in human-readable Scenarios as part of Feature files.

Direct Access to .NET API

Squish hides details of the underlying UI technology details as good as possible. No programming skills required. But any tester wishing to access the internals of the application can do so as well. The script languages include bindings to native .NET objects, properties and functions.

Download of Free Trial Version

Request the download of a free trial version. The trial version is fully functional and comes with technical support from our team of engineers.