2018 up to now | 2017 | 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | 2010 | 2009 | 2008 | 2007

(older archive entries before 2007 are not shown here, but included in the onsite-search)

Mailing List - Entries of 2014


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[QF-Test] JavaFX and Chrome support: First public Beta of QF-Test 4.0 released


  • Subject: [QF-Test] JavaFX and Chrome support: First public Beta of QF-Test 4.0 released
  • From: Gregor Schmid <Gregor.Schmid@?.de>
  • Date: Wed, 26 Mar 2014 20:49:04 +0100

Dear QF-Test users,

We are pleased to announce the first official Beta version of QF-Test
version 4.0. We expect a Beta period of about two months with frequent
updates which will also be announced on this list.


 QF-Test 4.0.0-beta1 with JavaFX and Chrome support released
 ===========================================================

QF-Test version 4.0.0-beta1 is now available for download from

   http://www.qfs.de/en/qftest/download.html

Highlights of QF-Test 4 include:

* New GUI engine: JavaFX

* Support for Chrome browser on Windows

* Improved support for Java WebStart and Applets

* Support for the AJAX framework jQuery UI

* Generic classes for components of all GUI engines

* Improved user interface with colored syntax highlighting

* New package for client-side ssh connections

For a detailed list of innovations since QF-Test version 3.5 please
see the release notes below or online at

    http://www.qfs.de/en/qftest/relnotes.html


 License updates for QF-Test 4
 =============================

To ease the transition to a new version for users, beta releases can
be used with the license of the previous version, though only for a
limited time. Licenses for QF-Test version 3.5 are valid for QF-Test
version 4.0 until June 30, 2014.

Users with a valid Maintenance Agreement will be entitled to this
major upgrade for free. Without Maintenance Agreement the fee for
upgrading from version 3.5 to version 4.0 is 30% of the current
license price.

Please note that Chrome support is automatically included in
QF-Test/web whereas JavaFX support in QF-Test/fx is a new GUI engine
that must be purchased separately or as an add-on. Evaluation licenses
automatically include support for the JavaFX engine, users with a
commercial license should request an evaluation license if they want
to give QF-Test/fx a try.


 Release Notes for QF-Test version 4.0.0-beta1
 =============================================

New features:
-------------

* JavaFX is the successor of Swing as the standard UI Toolkit in Java
  8. QF-Test version 4.0 introduces the new product line QF-Test/fx
  that fully supports testing JavaFX applications. This GUI engine is
  nearly complete. Missing at this point is recording of procedures
  and support for handling the embedded WebView as a full-featured
  QF-Test Web engine is incomplete.

* Support for the Chrome browser on Windows is well advanced and
  mostly stable. As before with Internet Explorer and Firefox the goal
  is to hide the browser differences and enable a single test to run
  unchanged on all three browsers. Not implemented at this point are
  various browser dialogs as well as file up- and download. Another
  current restriction is that only one instance of Chrome can be run
  by QF-Test in parallel.

* The concept of generic classes, initially available for the web
  engine only, has been extended to support JavaFX and soon all GUI
  engines. It is the basis for interoperable tests that work for
  different GUI engines, provides a higher level of abstraction and
  more flexible and robust component recognition. Recording of generic
  classes is configured via the option "Record generic class names for
  components".

  See the video at

    http://www.qfs.de/en/qftest/web-gui-testing-reduction-of-complexity.html

  for a vivid demonstration of the explosion of complexity in AJAX
  user interfaces. This applies just as well to JavaFX which shares
  the automation problems of a UI built from a large number of small
  GUI elements and for which QF-Test's approach with generic classes
  fits perfectly.

* Tolerant class matching when recording: Existing nodes in QF-Test's
  component hierarchy will be reused as long as they match one of the
  classes of the recorded component. This means that when switching
  to/from generic class recording, no components will be forcibly
  re-recorded. This has no impact on the 'Update components' feature
  which always updates the respective components according to the
  current recording option settings.

* Connection with the SUT is now implemented via the Java agent
  mechanism by default. It is faster, more stable - especially for
  Java WebStart and Applets - and much more flexible and powerful. In
  case of problems the Java agent mechanism can be disabled via the
  option "Connect via QF-Test agent".

* During SUT startup Jython and Groovy are now loaded on demand,
  leading to faster and more reliable startup. Jython in particular
  was one of the main reasons for problems with Java WebStart. This
  also reduces the overhead and memory footprint if either of the
  languages is not used at all.

* Support was added for the AJAX framework jQuery UI.

* Eclipse/SWT support was added for the Eclipse 4.4 "Luna".

* The Nebula NatTable component is now supported by default and
  automatically recognized.

* Colored syntax highlighting of tree nodes was added which
  significantly improves readability of test-suites.

* The shared terminal now provides coloring of different message
  types. The new group of Terminal options encloses a bunch of new
  settings to adjust text display in the shared terminal. Font size
  and type can be defined as well as a number of regular expressions
  to highlight and/or filter arbitrary text in the output.

* It is now possible to set breakpoints on 'Component' nodes so as to
  enter the debugger as soon as the node gets referenced.

* For a failed 'Check items' node both run-log and report now contain
  a context diff of the expected and actual values so that all
  deviations can quickly be identified.

* Relative test-calls with a leading '.' are now supported.

* In places where QF-Test supports regular expressions, e.g. 'Text',
  'Feature' or 'Items', normal text can now be turned into a properly
  quoted regular expression by right-clicking and selecting 'Escape
  text for regular expressions' from the context menu.

* Handling of items with multi-line text, e.g. tree nodes, table
  headers or cells, list items etc. has been improved.

* Search and replace operations for variables can now be limited
  further to cover only variable names or variable values.

* The manual chapter on integration with HP ALM - QualityCenter was
  rewritten from scratch.


Changes that can affect test execution:
---------------------------------------

* The 'Wait for component to appear' node implicitly waits for the
  respective SUT client to connect for the required GUI engine. In
  case the wait fails, a ComponentNotFoundException is thrown with a
  message that explains whether the component was not found, the
  respective SUT client is not connected or whether there is no
  matching GUI engine available for that client. The 'Expected
  message' attribute of a 'Catch' node can be used to differentiate
  between those causes.

  In absence of a suitable client there was an inconsistency in older
  QF-Test versions, causing either a ComponentNotFoundException or a
  ClientNotConnectedException to be thrown, depending on whether such
  a client was previously connected or not. In case your test still
  expects a ClientNotConnectedException you either need to change the
  'Catch' node, add an additional 'Catch' or prepend the 'Wait for
  component to appear' node with a 'Wait for client to connect' node.

* The new option "How to handle disabled components" defines what to
  do when a disabled 'Component' node is referenced during test
  execution. In previous versions of QF-Test the disabled state was
  ignored which sometimes led to confusion. The default now is to log
  an error. Consequently, disabled 'Component' nodes are no longer
  re-used when recording.

* There is a new option called "Default timeout for checks (ms)" that
  - as its name implies - defines a default timeout for checks that
  have no 'Timeout' attribute set. It increases general stability of
  check execution. If your tests include a lot of 'Check' nodes
  without 'Timeout' that are expected to fail, test execution time may
  increase. In this case you may want to set this option back to 0,
  the old default or, preferably, update the respective nodes and set
  their 'Timeout' attribute to 0.


New packages and procedures in the standard library qfs.qft
-----------------------------------------------------------

* The new qfs.fx package holds a full set of procedures for
  interacting with JavaFX components.

* The new qfs.utils.ssh package provides procedures for client-side
  ssh connections.

* There's a new check utility procedure called
  qfs.check.checkValueInRange.

* Various new procedures for interacting with Swing components:
    qfs.swing.checkbox.deselectWithCoordinates
    qfs.swing.checkbox.selectWithCoordinates
    qfs.swing.checkbox.setWithCoordinates
    qfs.swing.general.clickAtComponentWithDetails
    qfs.swing.general.doClickWithDetails
    qfs.swing.general.waitForComponent
    qfs.swing.general.waitForComponentForAbsence
    qfs.swing.list.clickItemWithDetails
    qfs.swing.menu.selectItemWithCoordinates
    qfs.swing.menu.selectSubItemWithCoordinates
    qfs.swing.menu.setCheckItemWithCoordinates
    qfs.swing.menu.setSubCheckItemWithCoordinates
    qfs.swing.menu.selectMenuItemInHierarchyWithCoordinates
    qfs.swing.menu.selectCheckMenuItemInHierarchyWithCoordinates
    qfs.swing.popupmenu.clickItemWithDetails
    qfs.swing.popupmenu.selectSubItemWithCoordinates
    qfs.swing.popupmenu.setCheckItemWithCoordinates
    qfs.swing.popupmenu.setSubCheckItemWithCoordinates
    qfs.swing.radiobutton.selectWithCoordinates
    qfs.swing.table.checkbox.deselectWithCoordinates
    qfs.swing.table.checkbox.selectWithCoordinates
    qfs.swing.table.checkbox.setWithCoordinates
    qfs.swing.table.clickCellWithDetails
    qfs.swing.tree.clickNodeWithDetails
    qfs.swing.tree.collapseWithCoordinates
    qfs.swing.tree.collapseNodeWithCoordinates
    qfs.swing.tree.expandWithCoordinates
    qfs.swing.tree.expandNodeWithCoordinates
    qfs.swing.tree.expandNodesWithCoordinates

* Various new procedures for interacting with SWT components:
    qfs.swt.checkbox.deselectWithCoordinates
    qfs.swt.checkbox.selectWithCoordinates
    qfs.swt.checkbox.setWithCoordinates
    qfs.swt.general.clickAtComponentWithDetails
    qfs.swt.general.doClickWithDetails
    qfs.swt.general.waitForComponent
    qfs.swt.general.waitForComponentForAbsence
    qfs.swt.list.clickItemWithDetails
    qfs.swt.menu.selectItemWithCoordinates
    qfs.swt.menu.selectSubItemWithCoordinates
    qfs.swt.menu.setCheckItemWithCoordinates
    qfs.swt.menu.setSubCheckItemWithCoordinates
    qfs.swt.menu.selectMenuItemInHierarchyWithCoordinates
    qfs.swt.menu.selectCheckMenuItemInHierarchyWithCoordinates
    qfs.swt.popupmenu.clickItemWithDetails
    qfs.swt.popupmenu.selectSubItemWithCoordinates
    qfs.swt.popupmenu.setCheckItemWithCoordinates
    qfs.swt.popupmenu.setSubCheckItemWithCoordinates
    qfs.swt.radiobutton.selectWithCoordinates
    qfs.swt.table.checkbox.deselectWithCoordinates
    qfs.swt.table.checkbox.selectWithCoordinates
    qfs.swt.table.checkbox.setWithCoordinates
    qfs.swt.table.clickCellWithDetails
    qfs.swt.tree.clickNodeWithDetails
    qfs.swt.tree.collapseWithCoordinates
    qfs.swt.tree.collapseNodeWithCoordinates
    qfs.swt.tree.expandWithCoordinates
    qfs.swt.tree.expandNodeWithCoordinates
    qfs.swt.tree.expandNodesWithCoordinates

* Various new procedures for interacting with web components:
    qfs.web.checkbox.deselectWithCoordinates
    qfs.web.checkbox.selectWithCoordinates
    qfs.web.checkbox.setWithCoordinates
    qfs.web.general.clickAtComponentWithDetails
    qfs.web.general.doClickWithDetails
    qfs.web.general.waitForComponent
    qfs.web.general.waitForComponentForAbsence
    qfs.web.list.clickItemWithDetails
    qfs.web.radiobutton.selectWithCoordinates
    qfs.web.table.clickCellWithDetails


Software that is no longer supported:
-------------------------------------

QFS is taking pains to support even very old software. QF-Test still
runs, for example, under Windows XP or with an SUT based on Java 1.5
or 1.6 but for systems that are no longer supported by their own
vendors we cannot provide full support.

Libraries that are required for the Firefox and Eclipse/SWT versions
listed below are no longer part of the default installation of
QF-Test. The majority is still being maintained, albeit with limited
testing. If you need support for such a system, please get in touch
with QFS via <support@?.de>.

Official support has been dropped for Java 1.5, Internet Explorer 7
and older, Firefox 25 and older (except Firefox 24 ESR) as well as
Eclipse/SWT 3.7 and older.

--
Gregor Schmid

E: gregor.schmid@?.de
T: +49 (0)8171 38648-11
F: +49 (0)8171 38648-16

Quality First Software GmbH | www.qfs.de
Tulpenstr. 41 | 82538 Geretsried | Germany
GF Gregor Schmid, Karlheinz Kellerer
HRB München 140833