* '''Test plan for component''': Autopilot * '''Component Checklist''': https://wiki.ubuntu.com/Process/Merges/Checklists/autopilot * '''Trunk URL''': lp:autopilot * '''Ubuntu Package URL (LP)''': http://launchpad.net/ubuntu/+source/autopilot == Test Plan == '''This test plan is not supposed to be complete; use it to guide your manual testing so they dont miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a MP''' === On the desktop === * Build and install packages from the MPs * Run the autopilot functional and unit tests === On the device === ==== Manual Method ==== * Install image on phone [[#ex-1|example 1]] * Install freshly build MPs that are needed for landing ("query: best way to build packages that don't build in emulation?") * Run at least one click app autopilot suite [[#ex-2|example 2]] * Run the Ubuntu UI Toolkit acceptance tests suite [[#ex-3|example 3]] * Run the Unity8 acceptance tests suite [[#ex-4|example 4]] ==== Automatic Method ==== * Run http://q-jenkins:8080/job/autopilot-release-gatekeeper/ * Set the silo PPA in the PPA parameter (without the 'ppa:' part of the PPA string). * You'll need to watch the job. Devices often become stuck, or fail to boot. * Once the job is complete, compare test failures with those found on the dashboard. re-run any failing tests, and generally ensure that your changes haven't broken anything. == Dependents/Clients == Any project with autopilot acceptance tests may be affected by changes to Autopilot. An example list (i.e. those found in the Image SmokeTest Dashboard): * ubuntu-clock-app-autopilot * ubuntu-system-settings-online-accounts-autopilot * ubuntu-ui-toolkit-autopilot * ubuntu-weather-app-autopilot * ubuntu-terminal-app-autopilot * ubuntu-rssreader-app-autopilot * ubuntu-filemanager-app-autopilot * ubuntu-calculator-app-autopilot * dropping-letters-app-autopilot * music-app-autopilot * calendar-app-autopilot * address-book-app-autopilot * messaging-app-autopilot * dialer-app-autopilot * camera-app-autopilot * notes-app-autopilot * unity8-autopilot * webbrowser-app-autopilot * gallery-app-autopilot * mediaplayer-app-autopilot * friends-app-autopilot == Examples == <> [Example 1] Installing image on phone: {{{ $ ubuntu-device-flash --channel=ubuntu-touch/devel-proposed }}} <> [Example 2] Setup and run a click application acceptance test suite: {{{ $ phablet-click-test-setup $ phablet-config autopilot --dbus-probe enable $ phablet-test-run -v dropping_letters_app # or notes_app etc. }}} <> [Example 3] Setup and run Ubuntu UI Toolkit tests {{{ $ phablet-test-run -v ubuntuuitoolkit }}} <> [Example 4] Run Unity8 acceptance tests: {{{ $ phablet-test-run -n -v unity8 }}}