Regression Testing and Automation Using KD Executor

KDE Contributor and Developer Conference

2004 KDE Community World Summit

Speaker: David Faure

Language: English

Talk is scheduled for: Saturday, 21st of August 2004, 10:00 - 11:00

Check the Schedule for an overview of all talks during this conference.

Everyone wants to ship their application complete bugfree! While this is not likely to ever happen to anything but a hello world program, there are a lot you can do about it. In this presentation Jesper Pedersen will talk about testing and demonstrate a tool for regression testing, which is freely available to KDE developers working on free software.

The tool is called KD Executor, and Jesper is the main architect and developer behind it, and he uses a major part of his working hours developing and maintaining it.

KD Executors approach to testing is "record and playback" - you simply executes the mouse movement, key presses etc you want to be the test case. During playback KD Executor will feed exactly these events back into your application.

Successfull playback without a crash is of course the first step in ensuring your application works, but you also need to ensure that everything is as expected. Jesper will demonstate several ways of doing so, which includes:

  • comparing properties from the application during execution (Does this listbox contain these elements, are this button disabled etc)
  • comparing screenshots
  • validating backend data structures
  • verifying that the application do not crash or return an invlid     return code.

KD Executor is more than a testing tool, it is also an automation tool. Jesper will demonstrate how you can save seconds or even minutes when debuggin a dialog, that takes hundreds of mouse and/or keyboard actions to get to. These seconds does easily sum up to hours for hard to get to dialogs, where you are in a development or debug cycle where you write/fix code, invokes the dialog, writes/fix code.

About David Faure

David Faure

David Faure is a French KDE Developer working for Klarälvdalens Datakonsult AB ( and Trolltech ( Maintainer of the file manager / web browser (Konqueror), works on the KDE libraries (component technology and network transparency) and on KOffice (framework, KWord). He wrote series of articles on KDE programming for Linux Magazine France, a chapter for the OPL KDE development book, and tutorials for the IBM developerWorks website. He is also part of the OASIS technical committee defining a standard file format for office suites.

Besides Jesper is the author of several technical articles (, plus founder and chairman for 3 years of a Linux User Group on Funen in Denmark.

Suggestions and inquiries direct please to KDE aKademy Team.