Technical questions
I can't connect to the AUT Agent.
If you try to connect to the AUT Agent and get an error message, make sure that you:
- Have started the AUT Agent from the start menu or via the command line
- Are trying to connect to the AUT Agent on the right port number. The AUT Agent preferences let you see and add port numbers.
What applications can I test?
You can test applications whose user interface is written with Java (Swing, SWT/RCP) and HTML (GUIdancer currently only supports testing in IE). GUIdancer also supports RCP applications with GEF (Graphical Editing Framework) components.
Can GUIdancer test Java web start applications?
GUIdancer can start and test Java web start applications once the application has been downloaded and saved to the file system. However, the actual Java web start mechanism is currently not supported by GUIdancer.
top of page
What are the system requirements?
You can read the system requirements in our technical datasheet.
Which Java version does GUIdancer require?
You can read about the software requirements for GUIdancer in our technical datasheet.
top of page
Does GUIdancer support the GCJ/GIJ and OpenJDK Java runtime environments?
GUIdancer is tested with the Sun JRE. Because the GCJ/GIJ and OpenJDK Java runtime environments use a non-standard implementation, they are not supported by GUIdancer.
top of page
Can GUIdancer be used to test applets?
In the current version, there is no support for full-featured applets. Simple applets may be tested if they are embedded in applications.
top of page
How do I configure GUIdancer to test RCP applications?
To test RCP applications, you must unzip the RCP-Accessor into your application's plugin directory. Information on doing this is in the user manual.
If you install a new version of GUIdancer, bear in mind that you will need to install the new RCP-Accessor too. The first time you start your application after installing the new accessor, start it with a -clean argument.
RCP applications also need to have a keyboard layout specified in the AUT configuration. The keyboard layout corresponds to the system regional settings. Note that the keyboard that is actually physically connected to the computer has no bearing on the test execution.
top of page
What should I do if I have unzipped the RCP Accessor, but the ''starting AUT'' progress bar in the console view does not disappear?
RCP applications generally have a configuration/config.ini file which contains the parameter osgi.bundles. This parameter may need to be modified to allow the RCP Accessor plugin to load on AUT startup. The org.eclipse.update.configurator plugin automatically loads all plugins found in the plugins directory, which means that the RCP Accessor should start with the AUT if org.eclipse.update.configurator@3:start is already defined in the osgi.bundles parameter. Otherwise, you may need to add com.bredexsw.guidancer.rcpaccessor to the end of the osgi.bundles parameter.
top of page
What is a toolkit?
GUIdancer tests and licensing operate on a toolkit basis. A toolkit is a GUI framework. The toolkits we support are: Swing, SWT, RCP, GEF and HTML.
top of page
What is a keyboard layout?
When you are testing SWT and RCP applications, you'll need to specify a keyboard layout in the AUT configuration. This tells GUIdancer what layout your system is using. Note that the actual keyboard attached to the computer does not make a difference; the system regional settings are what counts.
top of page
Can I add further keyboard layouts to GUIdancer?
If your application uses a keyboard layout which is not supported out-of-the box by GUIdancer, you can create a keyboard mapping file and add this to the GUIdancer installation. Information on creating the keyboard layout and where to add the finished file is in the reference manual.
top of page
Can GUIdancer integrate with requirements management, bug-tracking, or reporting tools?
At the moment, there is no direct support for integration with such tools. However, GUIdancer projects are stored in xml format, which makes it easy to manage and administer projects in various tools.
In terms of bug-tracking, a good tip is to create Test Suites which test each ticket or issue. The link to the bug-tracking system can be made by naming the Test Suite with the issue or ticket number.
GUIdancer test result reports can be entered into a reporting tool such as Birt to provide reports of the test activity over a longer period of time.
top of page
Can GUIdancer test applications which use UTF-16 characters?
Yes, GUIdancer is compatible with both UTF-8 and UTF-16 applications. This means that you can even test Japanese or Chinese versions of your application, for example.
top of page
Can I access databases from within GUIdancer?
There is no direct support for database access as a Test Step within GUIdancer. However, external scripts can be executed as a part of a test. Also, database query results can be stored in an Excel table, which can be used as a data source by GUIdancer.
If you want to add support for database queries in GUIdancer, you can do this by writing an extension.
top of page
How do I enable logging?
Open the configuration tool from the start menu or command line. When prompted, browse to the installation directory for the GUIdancer installation you want to configure (if you only have one installation, accept the default). In the tabs for client logging and AUT agent logging, choose log file as the logging method, and enter a path to a file where you have write access. Close the configuration tool by clicking OK.
Via the help menu in GUIdancer, you can now show the logs for the client and the AUT agent.
top of page
Can GUIdancer be extended?
You can add support for your own components and actions in GUIdancer using the extension API. Support can be added for the toolkits Swing, SWT and RCP, but not for Web. Instructions and details on doing this are in the Extension Manual. Extensions are written in Java.
top of page
Does GUIdancer have a debugging mode, so that tests can be executed step-by-step?
GUIdancer does not have a debugging mode to execute tests step-by-step. You can, however, use Event Handlers to pause the test when an error occurs, so that you can see the circumstances in which the error occurred.
top of page
Is it possible to run GUIdancer in a continuous integration process?
Yes, the GUIdancer command line client allows this. The use of this client is described in the user manual.
You can also run tests on the AUT using a virtual frame buffer if you want the testing to take place independently of the actual GUI environment.
top of page
Is it possible to run GUIdancer with Ant?
There is no direct ant target for executing GUIdancer. However, the exec command can easily be used to execute GUIdancer. For example:
< exec executable="GUIdancerCMD.exe" vmlauncher="false" failonerror="false" resultproperty="testResult" />
top of page
Can you recommend any best practices for integrating GUIdancer into the build environment?
We recommend using a tool or framework for continuous build integration. This tool can then execute GUIdancer tests and evaluate the results.
We use Hudson as our continuous build integration framework. Hudson runs on a dedicated test computer, which has a stable environment and configuration. GUIdancer tests are run from this machine, with AUT agents running both locally and on other remote test machines. Hudson:
- checks out the source files from the repository,
- builds the application,
- starts the tests, and
- reports the test results.
The most basic smoke tests are run after commits throughout the day, more complex tests are executed every night, and tests with very long execution times are executed over the weekend. In this way, defects can be identified within a short time after they are committed to the repository.
top of page
What ports does GUIdancer require for testing?
GUIdancer requires various ports to communicate in two directions:
- From GUIdancer to the AUT agent: this port is defined in the GUIdancer preferences.
- From the AUT to GUIdancer: this port is dynamically chosen, and cannot currently be defined. Therefore, any ports available on your test machine must also be open on the machine from which the test is being run.
If opening all ports in this way is not an option, we recommend using the GUIdancer command line client on the test machine to run the tests, so that all communication is done locally.
top of page
How can I synchronize two test runs?
You can test different AUTs during one test using a ''Test Job''. A Test Job allows you to combine multiple Test Suites to be executed after each other. Each Test Suite can be linked to a different application.
top of page
back to faq

