Free testing tools for windows application – UI test automation
1. Framework QTestLib
First, consider the framework QTestLib, which is responsible for unit testing in QT. Unfortunately for UI test it provides much less opportunity than to write unit-tests. Only function for GUI-testing simulation is QTestLib mouse and keyboard.
C in terms of test automation, this option is not the most optimal. When using it, is a mixture of unit-tests (developed by programmers) and GUI-test (developed by testers). In addition, it is important not only to click on a particular coordinate window, but also to get control properties and perform patterns realized by this control. So stay on it will not, and move on to more functional tools. Those who want to learn about the framework, QTestLib more can read Chapters 3 and 4 textbook QTestLib .
2. UI Automation
UI Automation – a technology that uses to access the interface control mechanism Microsoft Active Accessibility (MSAA). It appeared for a long time, with the release of Windows Presentation Foundation. Many commercial solutions (eg, Ranorex) using UI Automation to access control.
Each element is represented as an object AutomationElement, which defines its basic identifiers. Some controls can implement so-called patterns. For example, the pattern ExpandCollapsePattern serves to collapse and expand the menu item. For supported patterns used method GetSupportedPatterns. To find control with the specified property value class is used PropertyCondition.
When writing tests identifiers controls, their properties and possible patterns convenient to look at the utility UISpy. Read here more
3. White framework
White framework is an extension of UI Automation, which makes access to the controls and their properties more comfortable. You can find it here . All features listed for UI Automation, touch and White.
To understand the advantages when you use it, remake the original example of using this framework.
4. PowerShell Extensions
Test automation is available with built-in tools Windows: powershell, as well as expanding UI Automation PowerShell Extensions. Extensions can find here . This tool allows you to make testing more flexible and relatively independent of the runtime. For example, when testing the configuration you can simply copy the scripts on virtual machines, where they will be executed. No additional software (except UIAutomation . dll) software is required.