2.47. Version 3.4.5

Table of Contents

2.47.1. General
2.47.2. IDE
2.47.3. Qt-specific
2.47.4. Java-specific
2.47.5. Web-specific
2.47.6. Mac-specific (Cocoa/Carbon edition)
2.47.7. Tk-specific
2.47.8. Source Builds

2.47.1. General

  • Fixed the crash that occurred when invalid switch statements were encountered in Tcl test scripts.

  • Fixed backtraces shown in the test result logs for Tcl scripts.

  • Fixed the usage of "\[" in wildcard matching patterns for property values.

  • Setup: Fixed writeConfiguration() so that it now shows the correct license key file if it exists, even if it could not be overwritten because it is set to read-only.

  • Added documentation for the Squish Hudson Plugin.

  • Fixed the Perl testData::put() function.

  • Implemented the ApplicationContext.usedMemory property on Windows.

  • The objectMap.load() function now throws a script exception if passed an invalid file name.

  • Fixed the Python script call stack; this means that test.verify() now logs the correct filename and line number.

  • Fixed Perl code generation of Verification Points for nested properties like geometry.x.

  • Improved the test log messages for Python exceptions.

  • Now default to using 'localhost' if an empty host name is passed to startApplication().

  • Fixed the execution of Tcl scripts with one-line command definitions such as proc p {} "test log Hello".

  • Fixed the reporting of errors from functions on the JavaScript SQL object.

  • Fixed the parsing of comments in squishserverrc and other configuration files.

  • Implemented nativeType("<Alt+Space>") for Windows and macOS.

  • macOS only: added support for more special keys (like "<Down>") and key combinations (like "<Command+q>") to the nativeType() function.

2.47.2. IDE

  • Fixed the extraction of multi-property names from FAIL's for copying the new screenshot as expected in a Verification Point.

  • Improved the Spy's interaction with the Object Map. This fixes, for example, 'Object existence' checks.

  • Pressing Esc in a "Save changed file?" dialog cancels the closing of the editor instead of closing without saving the changes.

  • Fixed loading Excel files into the Test Data Editor—empty cells are no longer ignored.

  • Fixed the test result messages when saving a test report via the 'Save Results As...' menu entry.

  • Fixed the replay of tests if the current working directory in the suite's settings contains spaces.

  • Fixed a case where the SQUISH_TESTCASE_TEMPLATES environment variable was not respected.

2.47.3. Qt-specific

  • Added support for Qt 4.6.

    Note: Qt 4.6.0 on Windows renders text differently from previous Qt versions—this is likely to break existing screenshot verifications. If this is related to the Qt bug (QTBUG-6578) it might be reverted in 4.6.1.

  • Now the button's focus policy on clickButton() calls is respected.

  • Improved the hooking stability for applications which use multiple QApplication objects.

  • Now avoid possible memory corruption in internal QObjectLists.

  • Added a 'backgroundColor' property to QModelIndex objects.

  • Added a safeguard against crashes caused by reentrant calls to the event queue flushing function.

  • Made setMouseTracking(), setUniqueProperty(), and setAllowKeyEventCompression(), work for custom classes.

  • Fixed finding objects that have parenthesis, brackets, dot ('.') or star ('*') in their Qt object name.

  • Raise an exception if sendEvent() is called with the wrong number of arguments.

  • Monkey tester: now also considers top-level objects for user actions in addition to their children.

  • Stopped leaking QString objects that are created on-the-fly from native script strings.

  • Fixed the recording of context menu actions on item views.

  • Applied stricter type checks in various functions accepting QWidget arguments to protect against invalid input.

  • macOS with Qt 4 only: fixed a crash that happened in rare circumstances when the AUT exited.

  • macOS with Qt 4.5 only: record "<Tab>" instead of the non-portable "<->|>" ("->|" represents the tab symbol as ASCII art).

  • Fixed Qt 4 Wrapper Explorer crash on macOS ("dyld: Symbol not found: __ZnwmPv").

  • Return native long integer values if a wrapped API has a "long" return type.

2.47.4. Java-specific

  • Added 'MessageBoxOpened' as a possible option for the installEventHandler() function. The event handler will be called in SWT when a native message box is shown.

  • Fixed the exception that occurred when running setup and rt.jar doesn't contain a manifest.

  • Fixed Eclipse hooking if the "Java for Mac OS X 10.5 Update 4" is installed.

  • Fixed Java hooking on macOS after installing the Java security update of June 15, 2009.

2.47.5. Web-specific

  • Added support for Firefox version 3.5.2 and later.

  • Added support for Safari 4 for Web-testing on macOS.

  • Improved the setFrameContext() function to also consider the name attribute of frames.

  • Added support for the Richfaces toolkit's Combobox.

  • Fixed the replay of multi-line text input in web page <textarea> fields.

2.47.6. Mac-specific (Cocoa/Carbon edition)

  • Fixed a crash in Squish for Mac when accessing certain cells in NSTableViews.

  • Added support for NSAttributedStrings for testing Cocoa applications.

  • Added support for the event type "SheetOpened" in the installEventHandler() function (Cocoa only).

  • Improved the detection of the field editor (i.e. use the correct NSTextField object when recording keyboard input when a non-default field editor is used).

2.47.7. Tk-specific

  • Fixed reference-counting of the object returned by the tcleval() function.

  • Avoid access to deleted mainwindow to prevent crashes.

  • Fixed recording on Canvas widgets when the item that was pressed is overlaid by another item before the release happens.

  • Make the Tk wrapper compilable with Qt 4 provided that the Qt3Support module is present.

  • Don't record redundant snooze() statements when the Pause key is used to insert comments into test scripts.

2.47.8. Source Builds

  • Fixed compilation on Mac OS 10.6 (Snow Leopard) if the system Perl library is being used.

  • Support compilation with Tcl 8.3.