Depends on Qt 3.x
|Submitted: Jul 2 2004|
Updated: Mar 9 2005
KD Executor is a record and playback multi-purpose tool for Qt (running on all platforms supported by Qt - Windows, Mac, Unix/Linux) and KDE applications.
In addition, it contains a test environment which uses this record and playback tool for testing.
What does KD Executor?
Graphical user interfaces are rarely tested automatically, simply because there is a lack of tool support for running the application automatically.
KD Executor solves this problem by making it possible to record scripts for running the program.
Using KD Executor, you can record a test script which will be executed on a daily basis. This is often referred to as regression testing.
These scripts knows about the internals of your application and are thus much less fragile than scripts recorded using a toolkit-independent tool. This can be summed up with: "Even if the layout changes the script will still work"
In addition, you can select Qt properties during recording which can be printed out during playback as an additional way of ensuring that the GUI works correctly.
Using KD Executor, you can record a script 'demoing' your application. This script can e.g. be played at trade shows or as a way of giving potential customers a demonstration version of your program.
KD Executor has two very important advantages over generic recording tools:
The tool is platform-independent, you can record a script on Linux, and reuse it for all the other platforms Qt supports, and vice versa.
The demonstration capability is build into your program, this makes it impossible for dishonest customers to throw away the demo part and simply use your program.
You can use KD Executor in two different ways
For most users who use KD Executor for testing, the KD Executor Shell is most convenient. It lets you create, manage, and execute test cases in a friendly graphical test environment.
More advanced users who already have a test environment in place can also use KD Executor as an advanced record and playback engine, using and configuring KD Executor from the command line.
We are happy to announce the release of KD Executor 2.1 which contains
many new features that have been requested by users of KD Executor.
The most important new feature in 2.1 is its capability to record
files. A considerable amount of work has been put into making the
scripts as terse and editable as possible, so this should take your KD
Executor experience to a new level, where maintaining the scripts by
hand is now possible. See the user manual for details on how to make
the scripts as short and manageable as possible.
Old scripts will still work without problems, so you can now gradually
- It is now possible to record a script piece from within the KD
Executor shell, these script pieces can at a later point be played
back as parts of other scripts.
- Drag and drop events can now be recorded on UNIX/Linux.
- It is now possible to tell KD Executor that certain events should
simply be ignored if the widgets they are sent to are not found. This
ensures that a script can continue to live even in the case that the
mouse at recording time moved over a widget that at playback time does
not exist any more.
- KD Executor can now terminate an application that hangs in an endless
loop after a specified timeout.
- Test cases can now be created without recording a script. This
allows writing scripts manually from scratch.
- The sort order of test cases has been improved.
- In the example directory, you will find a number of new examples describing
KD Executor - see the README file for details.
The complete list of changes can be found in the ChangeLog file shipped
with KD Executor.
The KD Executor team at
Klarälvdalens Datakonsult AB
A free version of KD Executor is available for the development of Open Source software (as defined by the Open Source Initiative for the KDE desktop). This version will only work with KDE programs.Download it at the following URL:
Holders of a KD Executor license have access to both the source-code package and, upon request, pre-built binaries for the platforms they hold licenses to. You are are also entitled to one year of technical support and upgrades; this support contract can be extended.