Squish for Qt
Test your Qt applications using the Squish for Qt edition. Squish supports version 2.3, 3.x, 4.x and 5.x, across all Windows, Linux, Unix and Mac OS X desktop and embedded platforms such as QNX. Scripts created on one platform work without modification on all other supported platforms.
- Dedicated support for testing applications based on the Qt GUI toolkit
- Supports Qt versions 2.3, 3.x, 4.x and 5.x
- Works on all Windows, Linux, Unix and Mac OS X desktop and embedded platforms
- Test scripts work cross-platform without changes
- Dedicated support for all standard Qt controls
- Windows only: Support for testing embedded native Windows controls (in combination with Squish for Windows)
- Dedicated support for all complex Qt controls (Item views, menus, tabs, etc.)
- Dedicated support for QGraphicsView controls
- Dedicated support for embedded QtWebKit (in combination with Squish/Web)
- Dedicated support for QML, QML2 and Qt Quick controls and Apps
- Support for custom controls derived from Qt controls
- Extension plugin mechanism to add dedicated support for complex custom controls
- Script access to the Qt APIs (beyond of what is available via slots and Q_PROPERTYs)
- Script access to all slots and Q_PROPERTYs (also for custom controls)
- IDL mechanism allowing access to all custom classes of the C++ API
- Ability to connect test script functions to the AUT’s Qt signals
- Access to all standard and complex objects and object properties
Squish for Qt Embedded
Test your Qt Embedded applications using the Squish for Qt’s Embedded edition
Squish supports automating Qt GUI applications on embedded devices, as well as desktops, across variety of operating systems including embedded Linux, WinCE, QNX, Android and more.
When testing applications on an embedded platform, Squish remotely connects to the Application Under Test (AUT), injects the Squish Hook, and interacts with the AUT during recording or playback.
A minimal Squish package is installed on the embedded device enabling Squish to communicate with the Qt for Embedded application on the embedded device using a remote Squish instance running on a desktop operating system.
How are tests recorded?
The diagram below illustrates Squish recording test scripts from a desktop computer by communicating over the network to inject the Squish Hook and launch the Qt for Embedded application on the embedded device. Interactions with the on-device embedded application are captured, and returned to Squish in the form of a test script.
How are tests executed?
Similarly, when playing scripts, Squish uses the test scripts when communicating over the network, injects the Squish Hook to launch the Qt for Embedded application on one or more embedded device, and executes the script actions, capturing and revealing the results of the script execution in a report.
What makes embedded environments different?
Embedded environments consist of customized hardware and operating systems. To ensure accurate and reliable testing using Squish, a specialized Squish build, matching an environment’s particular specifications is produced. This is different than the ready-made Squish packages offered for testing desktop applications, as every embedded system configuration varies.
froglogic has several customers utilizing the Squish for Qt embedded configuration for their automated GUI testing, including companies in the medical, automoative, aviation, industrial and consumer device industries as well as others.
Squish for Qt Embedded SDK package
We offer a dedicated Squish for Qt Embedded SDK package that includes cross-compilation options and allows customers to produce builds required for their precise device and configuration. Dedicated technical support, assistance with cross-compilation and deployment as well as general Squish questions are included.
As an add-on service to the Squish for Qt Embedded SDK package, we also offers customization services, producing ready-to-deploy Squish builds for a customer’s embedded device.
The Squish for Qt Embedded SDK package and services are only available as a paid add-on to commercially-licensed customers with an active Squish support & updates subscription. Pricing varies based on customer device specifications.
Squish for Windows
Test your Windows applications using the Squish for Windows edition. Squish for Windows works on all Windows platforms, with dedicated support for all standard and complex Windows, MFC, .NET controls and more. Enhance your scripts with dynamic script and spy access as well as access to the complete Windows and .NET APIs.
The Squish for Windows edition includes dedicated support for:
- Native Windows applications
- Standard Windows and MFC controls
- Complex Windows and MFC controls (Item views, menus, tabs, etc.)
- Standard .NET Windows Forms controls
- Complex .NET Windows Forms controls (Item views, menus, tabs, etc.)
- Standard .NET WPF (Windows Presentation Foundation) controls
- Complex .NET WPF (Windows Presentation Foundation) controls (Item views, menus, tabs, etc.)
- Excel spreadsheets (accessing sheets, cells, etc.)
- Infragistics .NET Advantage controls
- Exontrol controls
- Plex controls
- Visual Basic (6.x and .NET) controls
- Embedded web content (when combined with Squish/Web)
- Complex custom controls using extension plugin mechanism
- Standard and complex objects and object property access
Squish for Mac
Test your Mac applications using the Squish for Mac edition. Squish for Mac works on all Mac OS X versions, including Intel and PowerPC. Offering support for standard and complex controls as well as script access to the Cocoa and Carbon APIs.
The Squish for Mac edition includes dedicated support for:
- Testing Mac OS X applications based on Cocoa or Carbon
- Standard Cocoa and Carbon controls
- Complex Cocoa and Carbon controls (item views, menus, tabs, etc.)
- The complete Cocoa and Carbon APIs including dynamic access to the ObjectiveC classes
- Access to all standard and complex objects and object properties
Squish for Tk
Test your Tk applications using the Squish for Tk edition. Squish for Tk works on all Windows, Linux and Unix platforms. Offering support for standard and complex controls as well as script access to the Tcl/Tk API.
The Squish for Tk edition includes dedicated support for:
- Testing Tk applications
- Standard Tk controls
- Complex Tk controls (Item views, menus, tabs, etc.)
- Script access to the complete Tcl/Tk API
Squish for Java
Test your Java applications using the Squish for Java edition. Squish for Java works on all Windows, Linux, Unix and Mac OS X platforms, with dedicated for support applications based on Java Swing/AWT, SWT/Eclipse RCP or JavaFX. Scripts created on one platform work without modification on all other supported platforms.
The Squish for Java edition includes dedicated support for:
- Testing applications based on Java Swing/AWT, SWT/Eclipse RCP or JavaFX
- Testing Java Web Start (JNLP) applications
- Testing Java applets
- Windows only: Testing embedded native Windows controls (when combined with Squish for Windows)
- Standard Swing/AWT/SWT/RCP/JavaFX controls
- Complex Swing/AWT/SWT/RCP/JavaFX controls (Item views, menus, tabs, etc.)
- GEF controls
- Embedded web content (in combination with Squish/Web)
- Custom controls derived from Swing/AWT/SWT/RCP controls
- Extension plugin mechanism to add dedicated support for complex custom controls
- Script access to the complete Java APIs
- Access to all standard and complex objects and object properties
Squish for iOS
Test your iOS Apps using the Squish for iOS edition. Squish for iOS is available on Mac OS X and Windows platforms. Scripts created on iOS Simulator and iOS devices work interchangeably without modification.
The Squish for iOS edition includes dedicated support for:
- Standard Cocoa Touch controls
- Complex Cocoa Touch controls (Spinner, Date Picker, Time Picker, Gestures)
- Web testing within device or simulator web browser (when combined with Squish for Web)
- Script access to the complete Cocoa Touch API
- Access to all standard and complex objects and object properties
Squish for Android
Test your Android Apps using the Squish for Android edition. Squish for Android works on all Windows, Linux, Unix and Mac OS X platforms. Scripts created on Android devices and emulators work interchangeably without modification.
- Dedicated support for Android objects
- Access to all standard and complex objects and object properties
- Script access to the Android APIs and Classes
Squish for Web (HTML, DOM, AJAX, …)
Test your Web applications using the Squish for Web edition. Squish for Web works on all Windows, Linux, Unix and Mac OS X platforms. Scripts created on one platform or browser work without modification on all other supported platforms and browsers.
The Squish for Web edition includes dedicated support for:
- Web-based applications with HTML/DOM/AJAX
- Embedded JavaApplets (when combined with Squish for Java)
- HTML5 web-based applications, including new elements and drag-and-drop
- Embedded native Windows controls (Windows only / when combined with Squish for Windows)
- Internet Explorer, Firefox, Safari (Mac OS X and iOS), Chrome, Opera
- Cross-platform/cross-browser testing without changes
- All HTML/DOM based GUI controls
- Complex custom controls using extension plugin mechanism
- Script access to the complete DOM/JavaScript APIs
- Standard and complex objects and object property access
Squish for Flex
Test your Flex applications using the Squish for Flex edition. Squish for Flex works on all Windows, Linux, Unix and Mac OS X platforms. Scripts created on one platform or browser work without modification on all other supported platforms and browsers.
The Squish for Flex edition includes dedicated support for:
- Flex applications with ActionsScript, MXML and Spark
- Internet Explorer (6.x – 9.x), Firefox (1.x – 4.x), Safari (Mac OS X and iOS), Chrome, Opera
- Cross-platform/cross-browser testing without changes
- Complex custom controls using extension plugin mechanism
- Script access to the complete Flex APIs
- Standard and complex objects and object property access
License Models
Who needs a license?
A Squish license is needed by every person who creates, edits or debugs test scripts, and for the running of test scripts. Rights to run test scripts in an automated, unattended, hands-off manner (ie., in conjunction with nightly builds or continuous integration) are typically included at no extra charge in Squish licenses. Contact us should you need pricing for someone manually running tests who does not need a Squish license for creating, editing or debugging test scripts.
Licenses are offered in bundles for use from small groups and individuals all the way through Enterprise development organizations.
Besides being licensed according to user, Squish licenses are also specific to one or more Squish Editions (Qt, Windows, Mac, iOS, Android, Java, Web, etc.)
Group License
Group licenses are most commonly used and make the most sense for groups of five or more. For group licenses, pricing is determined by the total number of possible users in the group, the number of users that would be expected to use the license concurrently and the different Squish editions needed for the group to use.
Group licenses are typically used when creating GUI tests is only one of the responsibilities of the users, such as when development teams create their own tests and several people share a fewer concurrent license seats.
Named License
Named user licenses are the best choice for dedicated testers, where each user always needs full access to Squish.
A Named user license is tied to a specific person, not a machine, and covers the individual’s use of Squish regardless of location or hardware. These licenses are also specific to one or more Squish editions (Qt, Windows, Mac, iOS, Android, Java, Web, etc.).