GnomeDesktopTesting

Summary

Split out the desktop testing libraries and test collections into ubuntu-specific and general Gnome parts to ease maintenance and encourage upstream adoption.

Release Note

Ubuntu Desktop Testing and GNOME Desktop Testing provide python libraries to create desktop tests and it is shipped with some already working tests for it.

Rationale

Desktop automation in Ubuntu is done using LDTP. On top of that we have built a testing framework that makes writing tests easier and reusable. Splitting the project into ubuntu-specific and general Gnome parts will make the bulk of the code useful to upstream and thereby encourage upstream adoption.

We need more involvement from the community on writing testing. Ubuntu Desktop is based in GNOME and most of the tests that we could think of would be the same tests for GNOME. Splitting this into a GNOME part and an overlaid Ubuntu part and having the GNOME project in GNOME servers (SVN, wiki, etc.) will bring more GNOME people into desktop testing and we will all benefit from that.

Use Cases

  • Pete is the Gobby upstream developer and he wants to add some tests to his project. He wants his tests to be available in all distributions, not only Ubuntu. He will be creating the test for the GNOME testing project, which will benefit Ubuntu as well.
  • Susan is the Ubuntu-maintainer of a Gnome package that ships essentially unaltered in Ubuntu. The test suite runs perfectly and any improvements Susan makes to it can go straight upstream.
  • Seb maintains a Gnome package in Ubuntu that is quite heavily patched. The test suite needs some tweaks in the ubuntu-specific layer to work properly.

Assumptions

  • LDTP is going to be used by the broader GNOME Testing community.

Design

  • Tests will be based in the libraries, and not the applications themselves. We need to keep libraries up-to-date, to avoid tests breaking.
  • Scope of testing is functional testing of the applications, therefore, running these tests in several machines with different hardware is not that relevant. We will focus on testing in one machine, prepared for that purpose.

Implementation

Documentation

Adding new test cases to be automated

  • Using http://testcases.qa.ubuntu.com (We need to add this information)

  • Add a tag (desktop-auto-proposed) to a bug in LP to mark a bug to be automated.

Code Changes

  • Code needs to be split and GNOME general things need to be moved to GNOME SVN servers - DONE
  • We will track GNOME project in LP in gnome-desktop-testing project.
  • We will track Ubuntu project in LP in ubuntu-desktop-testing project.
  • We will link both projects together and merge changes when needed.


CategorySpec

QATeam/Specs/GnomeDesktopTesting (last edited 2008-12-22 12:36:46 by cpc4-oxfd8-0-0-cust39)