Excelsior LLC is the manufacturer of Excelsior JET, a compliant Java SE 6 technology implementation (JVM) with an ahead-of-time (AOT) compiler and a deployment toolkit. The Excelsior JET product comes with GUI tools written in Java. One tool called the JET Control Panel enables quick setup of Excelsior JET for compiling Java applications into native code and the other tool, JetPackII, helps create native installation packages.

These GUI applications are implemented with Swing and feature a custom look-n-feel specially designed for them. Behind the presentation layer, an advanced logic is implemented to enable the user to accomplish the necessary tasks, such as the creation of a complete installation package, with minimal efforts.

That said, we have quite complex testing scenarios and employ the continuous integration approach including automated GUI testing with QF-Test.

QF-Test at Excelsior:
reliable testing of Java GUI application

When selecting GUI testing system, we had several crucial requirements: ease-of-use, ability to extend the built-in testing facilities, generation of customizable reports. QF-Test met all of them. Yet, we had one special concern: the testing tool had to be implemented to the Java SE specification and cooperate with any compliant JVM, in particular with Excelsior JET. We experienced no problems with the integration of QF-Test with Excelsior JET Runtime, even though the Java applications under test were compiled into native code Windows/Linux executables.

Finally, the presales support service provided by QFS Team went beyond our expectations. As a result, we chose QF-Test among 15+ other GUI testing tools we thoroughly evaluated.

Now we've been using QF-Test for 2 years and I have to add something:

  • High reliability. We have automated lots of testing scenarios which are run on different hardware ranging from quite old machines to modern multi-core computers - under a variety of Windows and Linux systems. We never experienced a runtime failure or any other problem due to a defect in QF-Test.
  • Dynamic analysis. QF-Test is able to detect some Swing misuses and report the respective warnings. A few issues have been found in our GUI applications. We took it seriously, analyzed each case and fixed the problems.
  • High performance. The applications under testing run quite fast, so we had no headache with upgrading our test servers.
  • Excellent support service. I cannot resist mentioning it again.

I wouldn't hesitate in recommending QF-Test to anyone who needs to establish a reliable testing infrastructure for Java GUI applications.

Vitaly Mikheev, CTO, Excelsior LLC, Russia