##(see the SpecSpec for an explanation) * '''Launchpad Entry''': [[https://blueprints.edge.launchpad.net/checkbox/+spec/qa-ldtp-checkbox-integration|qa-ldtp-checkbox-integration]] * '''Created''': AraPulido * '''Contributors''': * '''Packages affected''': checkbox, ubuntu-desktop-testing == Summary == This should provide an overview of the issue/functionality/change proposed here. Focus here on what will actually be DONE, summarising that so that other people don't have to read the whole spec. See also CategorySpec for examples. == Release Note == When these changes are implemented tests written for LDTP and, specifically, for Ubuntu Desktop Testing, Checkbox will be used to run desktop tests and reporting will be consistent. == Rationale == We want to have a consistent test harness for the majority of our tests. Checkbox, formerly hwtest, it is a tool to run tests. It is flexible enough to be used to run all kind of tests, including desktop tests. == Design == === Permissions === We need Checkbox to be able to run as a normal user, rather than running always as root. This need changes from both Checkbox and Ubuntu Desktop Testing * Checkbox can be run as non-root: {{{ ./bin/checkbox-cli --config="checkbox/plugins/blacklist=permission_prompt" }}} * Suites and scripts are written on installation under /usr/share/checkbox, with root-only permissions. It would be better to have a .checkbox folder in the user's home folder to store this kind of information. * Results are stored by default in /var/lib/checkbox, and this is only writable by root. * Ubuntu Desktop Testing package installs scripts in /usr/share/ubuntu-desktop-tests only readable by root. === Test results === Right now test results in Checkbox only accept zero for pass, non-zero for a fail, in a unix-like manner. The problem is that if we want more complex reporting (i.e. screenshots when something fails) we need more flexibility here. When running LDTP tests a XML file is generated. This should be parsed by maybe a Checkbox plugin in order to transform that answer to a Checkbox consistent format, while keeping this XML for human-readable reporting. An example of this XML file: {{{ }}} For Intrepid milestones these results have been parsed and transformed into a HTML file. An example can be found here http://people.ubuntu.com/~ara/ldtp/test_results/intrepid/alpha-6/openAll/Accessories.html === Test definition === The current test definition in Checkbox should be enough to define the tests. When the desktop-testing plugin is written, that would be the type of test. It is necessary, though, to implement a way to differentiate a test failure from a script error. This is going to be tracked in Launchpad Bug #306113 (https://bugs.launchpad.net/checkbox/+bug/306113) == Implementation == === Code Changes === ==== New desktop-testing plugin ==== ==== New error test status ==== == Unresolved issues == Sometimes the LDTP server breaks its connection. We should be able in further implementations to start a new LDTP server automatically to run the remaining tests of the suite. == BoF agenda and discussion == ---- CategorySpec