Table of Contents
Here is a summary of the changes that have been made since the Technical Preview editions and which are incorporated in the new Squish 4.0-beta1 editions.
Added a new squishserver --verbose
option to make it
easier to debug connection problems involving remote hosts.
The Squish IDE no longer crashes if it's asked to display a reference to a non-existent Perl function.
The Spy's tooltip colors no longer conflict with the AUT's palette.
The Squish IDE is much more robust when property accesses to null
objects are attempted.
The Squish IDE is no longer has startup errors if .ini
configuration files are missing.
The waitForObject()
and
waitForObjectItem()
functions can now accept
an object name (as before) or an object reference (new) as their first
argument.
The execution of waitForObject()
function calls
has been speeded up by eliminating one call round-trip between
squishrunner and the AUT. (And newly recorded scripts are faster
anyway.)
The waitForObjectItem()
function returns a
reference to the item rather than the object that contains the
item—for example, it returns the relevant table cell item rather
than the table.
If the source()
function was used in Perl
scripts that had one or more breakpoints, the filename and line number
reported by the Squish IDE could be wrong; these problems have now been
fixed.
Squish no longer crashes if the test script has incomplete or
syntactically incorrect switch
statements.
Squish no longer crashes if a JavaScript test script attempts to access results on a closed SQL query.
The JavaScript SQL result object's toFirst()
,
toNext()
, and value()
methods no longer
produce spurious warnings.
The waitForObject()
function now uses an improved readiness
check for Web objects.
JavaScript error reporting in Internet Explorer has been improved.
Squish now provides access to the computed/cascaded style values in HTML elements' style properties. This ensures that the values retrieved correctly reflect the actual state of the elements in the web page.
Fixed a bug relating to setText()
calls on file upload
elements on macOS (for Firefox 3 and Safari).
Fixed a bug with Spy highlighting when using Firefox and Safari on macOS.
The setup program now enforces the selection of a usable Firefox version to work around problems with Firefox 3.5.2 and later.
QIconView
items are now accessible as objects with
properties and geometry.
The waitForObjectItem()
function when applied to a
QTable
returns an object representing a particular
cell item—or raises an exception if no cell item is matched.
The cell item object can be used like any other object, for example, by
passing it to the mouseClick()
function.
When the waitForObjectItem()
function is used on a menu it
waits for the specified menu item to become available, i.e., visible and
enabled.
If the activateItem()
function is called on a disabled
item, an exception is thrown.
If the native GUI style requests that clicking a button should move the
keyboard focus to the button, the clickButton()
function
will honor this.
Squish no longer crashes if a QLabel
had directly or
indirectly set itself as its own buddy.
Conversions to and from the C++ Standard Library's
std::string
type have been added.
Script bindings for Qt 4's QMovie
class have now been
provided. (They were missing originally because of a function name
conflict.)
Squish no longer crashes if a non-QWidget
argument is
passed to the waitForObjectItem()
function.
The RTTI (Run Time Type Information) of QListViewItem
s is
now exposed as a Spy property.
Replaced the new changeWindowState()
function that was
introduced in the Technical Previews with a better
setWindowState()
function which takes an object name or
reference and an enum
(such as
WindowState.Maximize
).
Fixed a bug that occurred when hooking into Eclipse/RCP 3.5-based applications.
Fixed a bug in the dragAndDrop()
function where if the
target was given as an object name rather than as a reference it could
be incorrectly handled.
Fixed the recording of mouse clicks and double-clicks on SWT Tables, when the clicks were not on table cell items—for example, if the top-left corner of the Table was clicked.
Fixed a problem with text escaping that affected SWT Combo and List items.
Added MessageBoxOpened
as a possible option for the
installEventHandler()
function. If this option is used, the
event handler will be called when a native SWT message box is shown.