2.1. Version 4.2.1

2.1.1. General
2.1.2. IDE
2.1.3. Qt-specific
2.1.4. Java™-specific
2.1.5. Web-specific
2.1.6. Windows (native)-specific
2.1.7. Mac OS X-specific (Cocoa/Carbon edition)
2.1.8. iOS-specific (iPhone/iPad edition)
2.1.9. Tk-specific
2.1.10. Source Packages
2.1.11. Documentation

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

2.1.1. General

  • 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.

2.1.2. IDE

  • 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.

2.1.3. Qt-specific

  • Fixed QWheelEvent recording.

  • Made hooking into 64-bit Windows processes more reliably.

  • Disabled low-level Windows COM hooking approach on 64bit 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.

2.1.4. Java™-specific

  • 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 libfontconfig.so.

  • 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.

2.1.5. Web-specific

  • 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 HTML_Object.property() function.

2.1.6. 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.

2.1.7. Mac OS X-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.

2.1.8. 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.

2.1.9. Tk-specific

  • Fixed internal out-of-bounds memory access.

2.1.10. 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.

2.1.11. Documentation

  • 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.