Mago

Differences between revisions 5 and 7 (spanning 2 versions)
Revision 5 as of 2009-03-31 14:51:55
Size: 2429
Editor: 63
Comment:
Revision 7 as of 2009-06-11 09:42:02
Size: 2270
Editor: 63
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= The Ubuntu Desktop Testing = = Mago - A Desktop Testing Initiative =
Line 3: Line 3:
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) Mago is an desktop testing initiative that aims to have a set of processes and code to make writing automated test scripts easier and more reusable.

Although we started this effort as an Ubuntu project it works for vanilla GNOME in most of the cases.
Line 7: Line 9:
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. 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 Mago.
Line 9: Line 11:
== Parts of Ubuntu Desktop Testing == == Parts of Mago ==
Line 11: Line 13:
The Ubuntu Desktop Testing project is divided in three parts: the desktoptesting library, the testrunner and the tests themselves. The Mago project is divided in three parts: the desktoptesting library, the testrunner and the tests themselves.
Line 13: Line 15:
 * '''Test Runner''': under the bin folder, the ubuntu-desktop-test script, runs the test cases and parses the log.
 * '''desktoptesting library''': python library that creats a wrapping framework for Ubuntu applications based on LDTP that will hide the lower levels of destails to the test script.
 * '''Test Runner''': under the bin folder, the mago script, runs the test cases and parses the log.
 * '''mago library''': python library that creates a wrapping framework for Ubuntu and GNOME applications based on LDTP that will hide the lower levels of details to the test script.

Mago - A Desktop Testing Initiative

Mago is an desktop testing initiative that aims to have a set of processes and code to make writing automated test scripts easier and more reusable.

Although we started this effort as an Ubuntu project it works for vanilla GNOME in most of the cases.

Technology

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 Mago.

Parts of Mago

The Mago project is divided in three parts: the desktoptesting library, the testrunner and the tests themselves.

  • Test Runner: under the bin folder, the mago script, runs the test cases and parses the log.

  • mago library: python library that creates a wrapping framework for Ubuntu and GNOME applications based on LDTP that will hide the lower levels of details to the test script.

  • Tests: The tests themselves

Documentation

  • Getting Started - How to get the project and how to run the already available tests.

  • Adding New Tests - If the application that you want to test is already available in the desktoptesting library, you can add more test suites or cases to it following this document.

  • Adding New Applications - If the application that you want to test is not yet in the desktoptesting library, you can add it following this document.

  • Design - Do you want to hack the framework? Read a bit about the internals here.

Available Applications

We are going to track the coverage of the applications is a simple table, to have an idea of what applications have some coverage.

Some test results are also available:

Testing/Automation/Mago (last edited 2009-09-14 21:51:15 by 67)