What is autopilot and how do I contribute to a new autopilot testcase for a package ?
What is Autopilot?
From the Ubuntu wiki:
Autopilot is a functional testing tool for Unity. It simulates user actions by generating keyboard and mouse events, and then testing the internal state of Unity and associated applications.
To install Autopilot from the command line, run the following commands:
sudo add-apt-repository ppa:autopilot/ppa sudo apt-get update && sudo apt-get install python-autopilot
An example of a simple test unit:
autopilot run unity.tests.test_showdesktop.ShowDesktopTests.test_showdesktop_hides_apps
Warning: Running autopilot tests on your default desktop will cause your pc to send mouse and keyboard movements without your control. Please read the articles below before blindly running this command.
There is a tutorial here. Additionally, there have been several good articles mentioned in the Ubuntu weekly newsletter. These were written by Nicholas Skaggs, a community coordinator on the testing team, that have been very useful for me.
Autopilot: part 2 - Here the author walks through a simple "hello world" use case of autopilot
I highly recommend reading the three above linked articles before getting started with autopilot.
Additionally, test cases can be pulled via bzr using the following command:
bzr branch lp:ubuntu-autopilot-tests
Adding test case changes to the code branch can be done with a bzr push comand:
bzr push lp:<username>/ubuntu-autopilot-tests/ubuntu-autopilot-tests
See http://code.launchpad.net/ubuntu-autopilot-tests for more information.