Testing GUI such as SWT/Eclipse applications is not an easy task. The task is much harder if you wish to automate the testing scenarios. Challenges while automating test scenarios are complexity, stability and maintenance.
Eclipse RedDeer has been created as an alternative to SWTBot, offering stability and providing own features (support for Eclipse Wizards, Preferences, Test requirements, Wait conditions, UI tooling). RedDeer aims to help developers to write complex test scenarios that interact with application user interface quickly and effectively.
RedDeer is being developed since 2012.
Scope of Eclipse RedDeer is to provide:
- Support for SWT applications and Eclipse IDE for Java EE Developers distribution
- API based on PageObjects design pattern
- Integration with JUnit - built on top of JUnit with customized test flow and test tracking
- Wait conditions - wait for UI or Eclipse state
- Test Requirements - annotation driven configuration to prepare required test environment
- Graphical support (GEF/Graphiti)
- Support for running tests in a Jenkins CI environment
- Support for Windows, MacOSX, Linux
- UI tooling facilitating test development
The Eclipse RedDeer project is an extensible framework used for development of automated SWT/Eclipse tests which interacts with application’s user interface. RedDeer provides the PageObjects API for comfortable testing of standard SWT (Buttons, Trees..), JFace (UIForms), Workbench (Views, Editors, ..) and Eclipse (Wizards, Preferences,...) components and also allows creating and extending your own components. RedDeer also provides capabilities to work with graphical editors based on GEF or Graphiti.
Eclipse RedDeer is extensively tested on 3 major platforms - Windows, MacOSX and Linux to ensure that all nuances in the SWT implementations are handled correctly. Examination of test results in CI environment is easier thanks to capturing screenshots on test failures and collecting Eclipse Platform log.
Any project which uses SWT/Eclipse Platform would be able to easily utilize this testing framework.
The project could attract more contributors and users to improve stability and overall quality of RedDeer itself. This project will also benefit from the Eclipse Foundation's high standard of IP control and strong governance.
The contributed codes are licensed under the Eclipse Public License 1.0 and Red Hat is the copyright owner.
Q2 2017 - initial contribution and release of RedDeer 2.0
- Cover all wizards, preferences and views in Eclipse IDE for Java EE Developers
- Selenium integration for testing internal Eclipse browser
- Code generator