Skip to content

r4fterman/windowtester

 
 

WindowTester Pro

GitHub release (v6.*) Maven Central Version Static Badge Static Badge License Build WindowTester codecov

Disclaimer

This repository is cloned from the original Google WindowTester Pro code base. This repository focuses on getting Java/Swing UI under test.

The part of Eclipse/SWT is out of scope and has been removed in the active branches.

Introduction

WindowTester Pro is a UI test generation tool for testing Swing Java applications. WindowTester Pro eliminates the need to manually create test cases to test GUIs by automating the process of GUI testing. Using WindowTester Pro, developers can easily create tests for every GUI they create.

The tests generated by WindowTester Pro are standard JUnit tests thus they can be run within your IDE, or they can be automated to run using Maven.

Features

  • Write automated UI checks as code in JUnit style
  • Check the state of any (Swing/AWT) UI elements using assertions
  • Apply UI interaction like keystrokes, mouse clicks, and more

Requirements

  • JDK 21
  • JUnit 6

Supported platforms:

  • Windows
  • Linux
  • macOS

Artifacts

The runtime library provides base functionality so WindowTester can operate on a screen:

<dependency>
    <groupId>io.github.r4fterman</groupId>
    <artifactId>com.windowtester.runtime</artifactId>
    <version>6.0.0</version>
</dependency>

The runtime library provides base functionality so WindowTester can operate on Java/Swing:

<dependency>
    <groupId>io.github.r4fterman</groupId>
    <artifactId>com.windowtester.swing.runtime</artifactId>
    <version>6.0.0</version>
</dependency>

Abbot provides robot functionality to interact with the UI:

<dependency>
    <groupId>io.github.r4fterman</groupId>
    <artifactId>abbot</artifactId>
    <version>6.0.0</version>
</dependency>

The recorder library provides functionality to record a manual UI interaction and replay it automatically:

<dependency>
    <groupId>io.github.r4fterman</groupId>
    <artifactId>com.windowtester.swing.recorder</artifactId>
    <version>6.0.0</version>
</dependency>

Code Style

This project uses the Google Java Style Guide.
Code formatting is automatically applied via spotless-maven-plugin in a local pre-commit hook.

➡️ Contributors don’t need to run anything manually – whenever you commit, your code will be formatted automatically before being pushed.

License

This project is licensed under the Eclipse License v1.0.

About

Automatically exported from code.google.com/p/windowtester

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Java 98.0%
  • HTML 2.0%