Welcome to Squish!
Squish is a professional automated GUI testing framework for testing GUI applications based on toolkits such as Qt, the Tk, Java, XView toolkits from Oracle, and Android.
You can use Squish also to test HTML-based web applications running in popular browsers including Chrome, Microsoft Internet Explorer, Microsoft Edge, Firefox and other Mozilla-based browsers and Apple's Safari.
|Release Notes—for Upgraders||New features in each Squish version|
|Installation||Installing Squish on the supported platforms for testing on the supported platforms|
|Tutorials||GUI-toolkit-specific tutorials that cover the main Squish features and usage|
|User Guide||Task-oriented coverage of most Squish features and more in-depth examples than in the tutorials|
|API Reference||Script APIs used by Squish test scripts|
|Tools Reference||Squish tools functions|
|IDE Reference||Squish IDE windows, views, dialogs, and actions|
|Add-Ons Reference||Add-Ons functions|
|Frequently Asked Questions||Solutions to typical issues|
|Glossary||Explanations of main concepts and terms|
|Index||List of Squish functions and other useful terms|
|Third-Party Software||Acknowledgments for third-party software|
For more Squish-related hints, tips, tricks, and examples, see Knowledge Base.
Look and Feel Differences
Squish runs on Linux, macOS, various Unices, and Windows. Each of these platforms has its own unique look and feel—right down to the ordering of buttons in dialogs or sheets, and in the case of macOS the arrangement of menus and menu items. Furthermore, the appearance of applications can vary depending on the theme being used.
Therefore, the Squish IDE screenshots shown in this manual may look different from the Squish IDE that you see running on your own computers. This does not affect Squish's functionality, but sometimes when you look for a particular toolbar, dialog, or sheet button, it may not be in exactly the same place in your Squish IDE as shown in a screenshot.
Look and feel differences don't stop Squish from being able to do cross-platform testing. This is because Squish identifies GUI objects by their properties rather than by, say, their coordinates. This means that a Squish test suite that tests an application running on one platform can be used unchanged to test the same application running on another platform, even if say, the order of dialog buttons is different on the two platforms.