GUI Test Automation for Java/Swing™ Applications
With MarathonITE, you can create automated tests for Java/Swing™ applications. Whether your application is deployed as a JNLP(WebStart), an executable or a batch file – MarathonITE provides the launchers required to start your application for testing. MarathonITE simplifies testing JavaSwing applications. You can use the data driven tests to run the same script over various combinations of data points. You can use Ruby Gems to access external systems, be they databases or other web services. MarathonITE implements Selenium JSONWire protocol for Java/Swing GUI testing. You can enhance the functionality of your test scripts by directly using Selenium/WebDriver API along with MarathonITE methods.
Support for all standard components
While testing JavaSwing applications you can record actions on all standard Swing components with MarathonITE. MarathonITE records semantic actions on Swing components – rather than keystrokes and mouse clicks. For example, MarathonITE records a select call when the focus is moved away from a tree listing all the selected tree nodes.
Launchers for WebStart, Executable etc.
A java application can and is distributed in different ways. MarathonITE includes various launchers to start an application. The launchers include java command line, webstart, command line and executable JAR. Using the appropriate launcher, MarathonITE starts the application in test mode so that all operations on the UI can be recorded or played.
Distribute your automated tests
When the test suite grows in size, you may find it necessary to run the suite on multiple nodes to decrease the test runtime. One of the solutions is to distribute the tests across multiple desktops and execute them parallel. MarathonITE automation provides
marathonite-grid, using which the tests can be distributed across multiple nodes, thus reducing the execution time required.
Access external systems
There will be time when you need to access an external system – be it a file, database or a webservice – in your test scripts. MarathonITE uses regular ruby scripts. You can install additional ruby gems and access them in your test scripts.
Integrate with CI Servers
Most development teams use a CI (Continuous Integration) server for scheduling test execution. MarathonITE test suite can be executed using batch or shell scripts. This functionality can be used to integrate test execution with any system.
MarathonITE also includes a Jenkins plugin to integrate test execution with Jenkins CI.