Version 4.2.1

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

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.

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.

Qt-specific

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

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.

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.

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.

Tk-specific

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

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.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.
The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.
Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.