Mago

Differences between revisions 1 and 9 (spanning 8 versions)
Revision 1 as of 2009-03-26 10:40:00
Size: 1045
Editor: 63
Comment:
Revision 9 as of 2009-06-29 09:14:11
Size: 2849
Editor: 63
Comment: The project changed the name
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= The Ubuntu Desktop Testing = ## page was renamed from Testing/Automation/Desktop
= Mago - A Desktop Testing Initiative =
Line 3: Line 4:
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 10:
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 have set up a project, Mago, built on top of LDTP ([[http://ldtp.freedesktop.org/]]), that aims to have a consistent way of writing tests, making them easier to maintain.
Line 9: Line 12:
== Parts of Ubuntu Desktop Testing == == Mailing List ==
Line 11: Line 14:
The Ubuntu Desktop Testing project is divided in three parts: the desktoptesting library, the testrunner and the tests themselves. [[http://mail.gnome.org/mailman/listinfo/desktop-testing-list|GNOME Desktop Testing]]
Line 13: Line 16:
== Mago Project ==

The Mago project is hosted in Launchpad at [[https://launchpad.net/mago]]

To can branch the project by typing:

{{{bzr branch lp:mago}}}

The trunk branch is owned by a Launchpad team, mago-contributors, that it is a moderated team. Once you have contributed through merge proposals, you can apply to be part of the team and will be able to push to trunk and review some other members contributions.

You can view the source at [[http://bazaar.launchpad.net/~mago-contributors/mago/mago/files]]

== IRC ==

#gnome-testing in irc.gnome.org
#ubuntu-testing in irc.freenode.org

== 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
Line 16: Line 43:
 * [[/GettingStarted|Getting Started]]  * [[/GettingStarted|Getting Started]] - How to get the project and how to run the already available tests.
 * [[/NewTests|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.
 * [[/NewApplications|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|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.

 * [[Testing/Automation/Desktop/Coverage|Application coverage table]]

Some test results are also available:

 * [[Testing/Automation/Desktop/gedit|gedit]]
 * [[Testing/Automation/Desktop/seahorse|seahorse]]
 * [[Testing/Automation/Desktop/ubuntu-menu|ubuntu-menu]]
 * [[Testing/Automation/Desktop/update-manager|update-manager]]

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 have set up a project, Mago, built on top of LDTP (http://ldtp.freedesktop.org/), that aims to have a consistent way of writing tests, making them easier to maintain.

Mailing List

GNOME Desktop Testing

Mago Project

The Mago project is hosted in Launchpad at https://launchpad.net/mago

To can branch the project by typing:

bzr branch lp:mago

The trunk branch is owned by a Launchpad team, mago-contributors, that it is a moderated team. Once you have contributed through merge proposals, you can apply to be part of the team and will be able to push to trunk and review some other members contributions.

You can view the source at http://bazaar.launchpad.net/~mago-contributors/mago/mago/files

IRC

#gnome-testing in irc.gnome.org #ubuntu-testing in irc.freenode.org

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)