The Ubuntu Desktop Testing
The Ubuntu Desktop Testing is a project that aims to write a framework to make writing automated test scripts easier and more reusable. Although we started this effort as an Ubuntu project, as it works for vanilla GNOME in most of the cases, we forked the project and GNOME has now its own module and documentation (http://live.gnome.org/DesktopTesting)
We are using LDTP (http://ldtp.freedesktop.org/), as the upstream project is really well maintained and the Ubuntu QA team is already using it (https://wiki.ubuntu.com/Testing/Automation/Desktop/). LDTP access the applications through the accessibility libraries and, therefore, an application will need to be accessibility enabled in order to be tested with Ubuntu Desktop Testing.
Parts of Ubuntu Desktop Testing
The Ubuntu Desktop Testing project is divided in three parts: the desktoptesting library, the testrunner and the tests themselves.