Efficiently implement Java test automation with QF-Test

With QF-Test, you can take the quality assurance of your Java applications to a whole new level. Thanks to its support for all common Java technologies and its integration into modern development workflows, QF-Test is the ideal companion for your Java test automation
The test automation tool helps developers and testers create stable and maintainable tests for complex Java-based graphical user interfaces.

Advantages of QF-Test at a glance:

  • Broad support for Java GUI technologies for flexible testing strategies.
  • Easy to use, even for beginners.
  • Seamless integration into agile and DevOps-driven workflows.
  • Improved code coverage and sustainable testing efficiency.

Get started with QF-Test today and benefit from shorter release cycles and higher software quality.

QF-Test features specifically for Java GUI testing

  • All Java UI technologies covered, including Java Swing / AWT, JavaFX, Eclipse / SWT
  • Full access to the Java API of the application under test by integrated scripting languages Groovy, Jython and JavaScript. 
  • A lot of extension-APIs: QF-Test can be seamlessly integrated into existing toolchains and CI/CD processes.
  • Full support of complex structures – thanks to the close connection and alignment with the Java platform.

All QF-Test Features

The Quickstart Wizard Java

This video shows the creation of a setup sequence with QF-Test. This sequence allows to start your Java application as System under Test (SUT) from QF-Test.

Try for free

UI testing in Java – beyond the limits of traditional test frameworks

QF-Test was designed from the ground up for automated quality assurance in Java applications, with a particular focus on stability, maintainability, and efficiency. Thanks to its deep integration into the Java platform, the tool enables robust, repeatable tests that work reliably even with dynamic or demanding user interfaces. In large Java projects, QF-Test helps to detect errors early on, avoid regressions, and optimize testing processes in the long term.
The combination of a quick learning curve and a rich feature set enable writing well structured and maintainable regression tests and make it an efficient and valuable tool in the quality assurance process with a quick ROI in Java Testing.
The structured definition of test classes and test functions allows the entire test process to be clearly structured – from the test object to the targeted validation of specific components. Different parameter types can be used flexibly to design test cases that are variable and data-driven.

Supported Java GUI technologies: Swing / AWT, JavaFX, Eclipse / SWT

QF-Test covers all common Java GUI technologies – from proven toolkits such as Swing and AWT to modern alternatives such as JavaFX and SWT, the foundation of the Eclipse platform. This makes the tool suitable for both modern and existing legacy-based applications. Thanks to the uniform test logic across different UI technologies, development teams benefit from a consistent approach. Automatic detection of UI components minimizes manual configuration, which further accelerates test development. Even hybrid applications that combine multiple UI technologies can be tested easily with QF-Test.

Direct access to the Java API via Groovy, Jython & JavaScript

QF-Test provides powerful scripting languages for individual test logic, dynamic processes, or deep API interactions. Whether Groovy, Jython (Python for the Java world), or JavaScript—users can flexibly choose their preferred language. This allows tests to be not only recorded but also intelligently controlled, enriched with test data, or linked to external systems. Direct access to the Java API of the tested application enables maximum control and adaptability – ideal for complex test scenarios, dynamic UI behavior, or specific business logic.

Extensibility & integration into existing workflows

QF-Test can be seamlessly integrated into existing development and test environments. Whether TeamCity, Jenkins, GitLab CI, Bamboo, or other CI/CD systems – test runs can be triggered automatically and linked to build processes. The comprehensive reporting functions provide detailed evaluations that can also be processed automatically. Open interfaces, plugins, and individual script extensions allow QF-Test to be tailored to project-specific requirements – regardless of whether it's for small teams or large enterprise projects.

Generic classes in testing

Migration without regression via generic classes

  • Migration without regression, e.g. Swing to JavaFX or RCP/RAP...
  • Example of Centris AG

Create your automated Java GUI tests with QF-Test before or after the migration and use them virtually unmodified to ensure a continual correct functionality of your application. The basis for this is the high abstraction degree of the generic classes of QF-Test that guarantee a flexible, robust and cross technological component recognition. This allows a massive gain in confidence in Java testing as regressions can be detected without any further test effort.

Testing Java out of the box!

QF-Test itself is written in Java.

Java Swing GUI Testing / Java AWT GUI Tests

QF-Test has continuously supported Java Swing (the traditional GUI toolkit, with is part of every Java version of Oracle since 1997) since its very beginning in 1999 as a tool for automated GUI testing.

  • Since then, QF-Test has continuously been improved and extended and works reliably for all variants like WebStart, ULC, Captain Casa, as well as RIA (Rich Internet Application) variants.
  • QF-Test can test Swing applications with an embedded browser like e.g. JxBrowser. You can access both, the Java and the Web part of the application.

More about Java Swing Testing with QF-Test

JavaFX / OpenJFX GUI automated Testing

JavaFX is the successor of Swing and an integral part of Java 8. With Java 11 JavaFX was moved out of the JDK into the open source project OpenJFX. Since 2014 QF‑Test supports this GUI technology and provides advanced testing support including complex components like trees and tables. QF‑Test can test JavaFX applications with an embedded browser like e.g. JxBrowser or WebView. You can access both, the Java and Web part of the application.
When you migrate your application from Java Swing to JavaFX, you can reuse Swing GUI tests in QF-Test for JavaFX automated testing with little effort.

More about testing JavaFX applications with QF-Test

Article by Wolfgang Weigend, Oracle:
Automated Testing of JavaFX GUI-Components.

Java SWT GUI Automation Testing

Java GUI tests for applications based on the Standard Widget Toolkit (SWT), including Eclipse plug-ins and the Rich Client Platform (RCP). QF-Test has continuously provided support for this toolkit since 2008.

  • An important feature is automatic naming of RCP objects for stable and reliable component recognition.
  • Included is support for some special components like ktable or some of the tables from the Nebula project.
  • QF-Test can test SWT / Eclispse applications with an embedded browser like e.g. SWT browser. You can access both, the Java and Web part of the application.

More about Testing Eclipse/RCP (SWT) Applications with QF-Test

"I evaluated about 10 tools for automated Java GUI testing. Our table models were very complex therefore for evaluation of the tools I designed few tests/criteria which dealt with cells' content and images. Neither of the tools could perform all tests. I contacted specialists from technical support, they either admitted that their tools could not do some specific tasks, or they tried to offer workarounds, which would be an option if I would not find a tool that 'does it all.'

When I evaluated QF-Test it passed all my tests. Still I was a little bit hesitant because its scripting language was Jython, and learning a new language is a considerable effort, though an extensive array of standard nodes was very simple to use. Some of other tools had scripting language which I already knew; nevertheless eventually I made my mind and selected QF-Test reasoning that reliable performance was more important than my learning efforts."

Matt Ezren, QA developer

Creditex, Inc., New York, USA

"After evaluating a number of Java Swing automated testing tools, we found QF-Test to be the only one that managed to execute Java GUI tests on multiple platforms without platform dependency issues.

Let me add three sentences about your support: "This is what I call a response time! Great job! No wonder that your company is such a success :)."

Bojan Lozinsek, Projektmanager

Hermes Softlab, Maribor, Slovenia

"My personal opinion is that QF‑Test is still the best JAVA GUI test tool in market."

Saša Milošević, QA engineer

NIRI Intelligent Computing, Serbia

"QF-Test was the only automation tool that worked on our specific, highly customized Swing framework."

Isis Bauquis, Test engineer

Sword Linkvest SA, Switzerland

UI testing in Java – beyond the limits of traditional test frameworks with QF-Test

Classic frameworks such as JUnit are ideal for unit and integration testing, but reach their limits when it comes to automated testing of graphical user interfaces. User interactions such as mouse clicks, text entries, or dynamic UI validations are difficult to map with these frameworks—especially when stability, repeatability, and synchronization are required.

This is where QF-Test comes in: It was developed specifically for automated testing of Java GUIs and offers exactly the features that classic frameworks lack – including powerful UI recognition, intelligent synchronization mechanisms, and an intuitive user interface, complemented by flexible script integration. This makes test automation efficient and reliable even for complex Java interfaces.

The ability to define test classes and apply specific test functions to different test objects opens up new avenues for structured test automation. Support for different parameter types allows test cases to be parameterized individually and managed efficiently. This makes test automation efficient and reliable, even for complex Java interfaces.

Cross-platform Java automated testing on Windows, Linux and macOS

Webswing the future of Swing

Testing Webswing applications

Java Swing, JavaFX and Netbeans applications can be displayed in a browser with the technology Webswing.
QF-Test can test such applications, both the Java and the Web part can be accessed.
Your existing Java tests with QF-Test  can be reused in a Webswing system.

More about Webswing Testing with QF-Test

Java Automation Testing

  • Java Swing / AWT, JavaFX, SWT / Eclipse Plug-Ins / Rich Client Platform (RCP), Java WebStart, RIA, ULC (UltraLightClient), JIDE Common Layer components, Captain Casa
  • Hybrid applications embedded browsers via JxBrowser, SWT-Browser or  JavaFX WebView
  • Native Java applications in the browser with JPro or Webswing
  • Custom technology examples: Case studies of SyriusGK Software

What is a Java test?

A Java test is the systematic process of checking Java applications for errors, functionality, performance, and security. The goal is to ensure the quality of the code and identify potential problems early in the development cycle.

Java tests can be performed both manually and automated. While manual tests are often used for one-time checks, automated tests offer scalability, consistency, and efficiency. Depending on the test objective, a distinction is made between different test methods:

- Unit tests: Test individual functions or methods of a class.
- Integration tests: Check the interaction between different modules.
- Performance tests: Measure the performance of the application under specific conditions.

Java testing is an essential part of modern development processes and forms the basis for continuous integration and continuous delivery.

What are the advantages of automated Java testing?

Automated Java tests offer numerous advantages that increase both the efficiency and quality of your software tests:

  • Error detection in early development phases: Problems with the Java code are detected before they have a major impact.
  • Repeatable: Once created, Java tests can be run as often as desired without additional manual effort.
  • Extensible: Test suites can be expanded modularly and adapted to new requirements.
  • Higher code coverage: Automated Java tests cover more scenarios and test cases than manual Java tests.
  • Consistency and reliability: Automated Java tests prevent human error and ensure consistent results.
  • Integration into CI/CD workflows: Tests can be seamlessly connected to Jenkins, GitLab, or other tools.

The long-term benefits are clear: time savings, increased efficiency, and improved software quality.

Interested in QF-Test?

Tell us about yourself and we'll connect you with a QF-Test expert who can share more about our product.

Contact our service teamProduct booklet