froglogic today announced the availability of Squish 1.1, the new version of the automated GUI testing framework for Qt applications.The main new features of Squish 1.1 are:
- Python support: Squish has been designed to support multiple
scripting languages from day one. In Squish 1.0, support for Tcl was
implemented. In Squish 1.1, test scripts can also be written and
recorded in the very popular Python scripting language.
- Squish Spy: This new tool allows Squish to hook up to a running
application to inspect its objects properties and methods by either
clicking on objects in the application or by navigating the object
tree view. The already existing hook-up mechanism of Squish is used,
meaning the Squish Spy is also non-intrusive and doesn’t require any
modifications to the application to work.
- Test script debugger: Instead of just executing a test case, it can
be executed in the debugger now as well. This way break points can be
set, and the user can step through test scripts. This opens up many
possibilities for the future like allowing to execute a test until a
break point and recording from there.
- Automatic insertion of test verification points: The combination
of the Squish Spy and the debugger are the foundation of this new
feature. By halting the test script at a specified point and choosing
objects and properties in the running application, it is possible to
insert test verification points into the test script via the Squish
IDE without having to write the code manually.
“I am impressed with Squish. After I saw it, I set the other
options aside and recommended that my client buy Squish. I especially
like the fact that Squish uses existing scripting languages, rather
than requiring the user to learn a proprietary language. The folks at
froglogic are knowledgeable both about Qt and the state of the art in
test automation, a rare combination. They provided excellent support,
even from many time zones away. I’m looking forward to finding more
opportunities to use Squish!” said Danny R. Faught, Proprietor of
Tejas Software Consulting.
Other smaller improvements include:
- Basic ActiveX support: It is possible to send key and mouse events
to ActiveX components embedded in Qt applications via ActiveQt.
- Better control over the squishserver
- Additional event compression heuristics have been implemented
- Usability improvements in the Squish IDE
- Support for 64 bit and FreeBSD platforms
- All test result logs contain file and line number information
- Better error messages
Squish customers and evaluators can now find Squish 1.1 packages in
their download area. For more information about Squish and
its price and licensing, visit http://www.froglogic.com/squish. If
you would like to evaluate or buy Squish, please contact us
So could anyone explaint to me in plain english what this does? How does it test a user interface? And for what?
Squish is a GUI test automation tool. It allows you to “record” human interactions with an application, say adding a new customer to a business system. The recorded script is then played back against subsequent releases of the software under test to see if it still behaves the same after a bug fix. This is called regression testing.
Other very expensive proprietory CAST (computer aided software testing) tools like these are from Mercury Interactive, Rational and Compuware and have been around for a while. Squish is the first that I know of for Linux. I wish I could try it…