In today’s world of constantly changing software the need occasionally arises to be able to test non-web based forms and reports. Instead of having to purchase expensive and inflexible off the shelf solutions to handle these forms and reports, it’s critical to have solutions that can be integrated into your existing automation framework. We believe that the answer to testing these non-web based forms and reports is adding either White or Sikuli to the ATF based on the programming language used in the framework.
Testing non-web applications poses a challenge since unlike a web browser using HTML you cannot easily get handles to your page elements. Our solution to these issues is to use either the Sikuli library to interact with images of your application or White’s object-oriented API. Through Sikuli we organize images using an XML representation of your application, this makes it similar to using Selenium/WebDriver but with images. White integrates into the ATF and is used in a similar pattern to the Selenium based Page Objects.
White is a framework for automating rich client applications based on Win32, WinForms, WPF, Silverlight and SWT (Java) platforms. It is .NET based and does not require the use of any proprietary scripting languages. Tests/automation programs using White can be written with whatever .NET language, IDE and tools you are already using. White provides a consistent object-oriented API, hiding the complexity of Microsoft’s UIAutomation library (on which White is based) and windows messages.
Sikuli automates anything you see on the screen. It uses image recognition to identify and control GUI components. It is useful when there is no easy access to a GUI’s internal or source code.