SWTBot (http://swtbot.org) is a functional testing tool for SWT/Eclipse based applications. That eases and supports testing of multithreaded applications. SWTBot is capable of playback and recording of SWTBot Java "scripts", there are plans to provide scripting support for various other languages including JRuby(http://jruby.codehaus.org), and Groovy(http://groovy.codehaus.org/).
SWTBot is proposed as an open source project under the Eclipse Technology Project (http://www.eclipse.org/technology/). This proposal is still in the Project Proposal Phase, and this proposal is being made in order to call for more community participation.
- Background and Goal
SWTBot has demonstrated some interesting capabilities (http://swtbot.sourceforge.net/wiki/Screencasts) and very early on, and is being supported by a few contributors.
The goal of SWTBot is to be a good open source alternative to other functional testing tools for SWT and Eclipse, and make it easy for developers and non-developers to automate testing of applications written using Eclipse.
- Packaging and Deployment
SWTBot currently ships in the form of an eclipse update site, and also an independent .zip/.tgz download, and it would continue to ship in these forms.
- Project Scope
The scope of SWTBot is to make writing tests for SWT and Eclipse application easier not just for developers who understand the technologies, but also for Quality Analysts who understand the application and not the underlying technologies used to build them.
SWTBot should integrate well with JUnit so as to make execution and reporting of tests independent of Eclipse, yet integrate will with eclipse. This would mean that SWTBot tests can be run as an ant task as part of Continuous Integration using CruiseControl.
There are also efforts by individuals to port SWTBot to eRCP/eSWT.
- Future Work
It is proposed that SWTBot should provide APIs that enable for scripting languages based on the JVM. This would mean that scripts could potentially be written using JRuby (http://www.eclipse.org/proposals/glimmer/) or Groovy(http://groovy.codehaus.org/GroovySWT).
To make writing scripts easier, it is also proposed for better Eclipse integration, introspection of the application, and basic support for scripting/debugging.
- Chris Aniszczyk
- Someone else
- Initial committers
- Ketan Padegaonkar (email@example.com)
- Sriram Narayanan (firstname.lastname@example.org)
- Potential committers (individuals who have contributed patches)
- Cedric Chabanois (cedric.chabanois at entropysoft.net)
- Lechner Sami (lechner.sami at gmail)
- Interested parties
- PDE (Chris Aniszczyk)
- ThoughtWorks Studios (http://studios.thoughtworks.com)
- Nirav Thaker (nirav.thaker at gmail)
- Ravi Chodavarapu (email@example.com)