Version 4.2.1

Squish 4.2.1 is a maintenance release containing various bug fixes and small improvements as described below:


  • Fix exception type for waitForObjectItem() to be LookupError again, as functioned in Squish 4.2.0
  • Fixed setting breakpoints in test cases with non-ascii names when using Python as script language.
  • Avoid 'Connection to server closed' test result when using ApplicationContext.detach() method to detach from contexts in test scripts.
  • Correctly detect syntax errors in Tcl's startApplication() and attachToApplication().
  • Output Table VP results in Xml2 test result converter.
  • Fixed Table VP comparison with leading or trailing whitespace in cell text.
  • Fixed parsing of optional timeout parameter of Python's and Tcl's waitForObjectItem() implementations.
  • Signed Windows executables Setup.exe and squishide.exe with the froglogic certificate.
  • Upgraded packaged Ruby version to 1.9.3 to fix a crash when single stepping through the debugger.


  • Made clicking 'Copy Symbolic Name' and 'Copy Real Name' context menu entries in the IDE try to reuse object names if possible.
  • Sped up Test Result export.
  • Insert correct dataset variable name for JavaScript in code that is made data-driven.
  • Fixed enabled/disabled state issues of menu items.
  • Safely handle imports of test suites when name contains case variations.
  • Improved tooltips for Test Cases in Test Suites views.
  • Fixed problem with fetching sub-properties too often.
  • Automatically update non-active but visible watch editors.
  • Fixed testdata file labelling in testcases.
  • Switched to a faster table control for viewing table VP differences.
  • Fixed finding VP files with relative paths using Unix-separators.
  • Fixed display of old-style hierarchical names in Object Map editor.


  • Fixed QWheelEvent recording.
  • Made hooking into 64-bit Windows processes more reliably.
  • Disabled low-level Windows COM hooking approach on 64-bit Windows processes as it does not operate reliable.
  • Fixed Object Map name-reuse for nested multiproperty names (i.e., container, window).
  • Added support for sending QMouseEvent with Qt 4 constructor syntax, i.e., with buttons and modifiers as separate arguments.
  • Correctly handle keyboard modifiers from openContextMenu on replay.
  • Added missing properties (enabled, opacity, pos, scale, transformOriginPoint) to QGraphicsItem and QGraphicsObject subclasses.
  • Fixed support for Q_ENUM properties in dynamically registered QObject subclasses in Qt 3.
  • Added QList<int> and QList<QString> support as return types for methods of dynamically wrapped QObject subclasses.
  • Fixed recording using hierarchical names after picking an object in Spy-mode.
  • Exposed width and height properties of QML Items.
  • Fixed Table VPs when QTableView has hidden or reordered rows/columns. Table contents are now stored as they appear on-screen. Existing VPs for affected tables need to be updated, i.e., by using "Use as Expected Result" in the IDE.
  • Handle QTouchEvent in QtWebkit views.
  • Fixed relative coordinates calculation in sendEvent().
  • Implemented new properties 'rotation' for QGraphicsItem and 'textCursor' for QGraphicsTextItem.
  • Mac only: Fixed incorrect "architecture not supported" alarm.
  • Improved performance when testing embedded QWebView HTML controls.
  • Hide "ghost" widgets showing when attaching to an AUT using QGraphicsProxyWidget.
  • Made squishrunner more robust in case of sudden AUT context switches.
  • Fixed crashes when accessing references to an already deleted QWebView object.
  • Fixed QML id fetching for Qt 4.8.


  • Made closeWindow() script function more reliable in a mixed SWT/AWT application.
  • Added alternative hookup method when environment SQUISH_NO_QT_GUI variable is set to '1', primarily as a workaround for a crash on X11 in
  • Fixed hang during hookup of some SWT applications.
  • Fixed crash during picking objects on X11.
  • Fixed crash with mixed SWT/AWT application and using attachToApplication.
  • Fixed error in setValue() of AWT WebStart applications.
  • Avoid crash on JVM shutdown.
  • Made object-readiness and geometry checks more robust in Web Start and Applets.


  • Added label property on HTML_CustomComboBox and HTML_CustomSelectList support.
  • Fixed recording support using Proxy Browser.
  • Fixed typeText() exception with IE and Firefox.
  • Fixed querying properties with names that collide with JavaScript keywords (like 'for').
  • Added SmartGWT button text property.
  • Made selectOption() work with SmartGWT select elements including combo boxes.
  • Fixed setting text on invisible file-upload elements.
  • Provide more SmartGWT TextField properties.
  • Re-added support for accessing object sub-properties like "style.display" using the function.

Windows (native)-specific

  • Fixed various problems in which hooking into .NET application failed because unzipping a Squish package made Windows mark a few important DLL files as 'blocked'.
  • Fixed crash calling a method on a native object in some cases.
  • Fixed problems which caused some objects types (such as combo boxes) embedded into toolbars of .NET applications to cause lookup failures on replay.
  • Fixed accessing System.Windows.Controls.Image objects in WPF applications.
  • Show WPF TextBlock controls as children if there is more than one TextBlock in a given parent.
  • Fixed clicking .NET WinForms TableCell objects when they are scrolled off-screen.
  • Fixed non-working property and method access from Perl scripts.
  • Fixed startwinaut to observe the 'AUT timeout' setting.
  • Fixed crash when fetching listview item properties.

macOS-specific (Cocoa/Carbon edition)

  • Fixed race condition when playing back menu activations on Mac OS X (in rare occasions, determining the menu geometry failed).
  • Fixed waitForObject() for items in a NSTableView, NSOutlineView and for NSToolbarItems if the containing window is blocked by a sheet.
  • Fixed nativeType() on Mac OS for Del and Backspace keys.

iOS-specific (iPhone/iPad edition)

  • Created ability to allow starting iOS apps in the iPhone Simulator if the SDK version of the build does not exactly match the available SDK versions.
  • Automatically turn on accessibility support for iOS device testing ensuring properties like accessibilityLabel are available for device testing without manually turning on voice over.
  • Made the Perl and Ruby saveDesktopScreenshot() implementation work on iOS devices.


  • Fixed internal out-of-bounds memory access.

Source Packages

  • Added support for building with MinGW-w64 toolchains for both 32-bit as well as 64-bit Windows.
  • Honor --with-x11-libdir option when checking for XTest library.
  • Qt edition: Fixed build with namespaced Qt libraries.
  • Fixed compilation for Qt 4.8.0 on Mac OS X Lion.
  • Added Qt 4 system libraries and configuration detection on RHEL/CentOS >= 5 (needs --with-qtdir=/usr/lib64/qt4).
  • Fixed build with --disable-js configuration.
  • Fixed build on some recent Linux distributions by linking with libdl.


  • Added iOS tutorial and API docs to the offline HTML and PDF versions.
  • Updated the waitForObjectItem() and clickItem() documentation for Qt, Java and Tk.
  • Updated the list of files to be copy when installing for pure Qt 4 apps.
  • Documented how to install QC11 client without admin rights.