• This spec is about adding a new laptop testing section integrated in the QA Tracker website.


  • The Laptop Testing is a community driven project started during Lucid development (from Alpha 3)
  • Now testing work uses specific testcases that verifies laptop devices/component functionality.
  • Results are collected and organized using Wiki pages and this lead to a lot of manual actions and limitations.
  • Now a lot of reports are useless (e.g. people mark a test as Failed but they don't report a bug or add a link to it)

Use Cases

  • Richard want to test his laptop. By now he follows a testcase and report the results of his tests filling some tables in wiki pages. He has to put in manually a lot of info like
    1. Testcase code
    2. Result of the test properly formatted with colors and a link to any bug found, paying attention to put it in the right milestone column.
    3. His name with a link to the launchpad account, the milestone tested and a link to the his laptop wiki page.
  • With the new Laptop Tracker he would just need to register to the QA Tracker once, test any milestone he wants filling just the Comment/info fields and the bug numbers.


The website interface could be the same used by now for the other QA testing project (ISO, Desktop, Multitouch etc.), reserving as URL for the site.


  • Create a task, on the first page, for each piece of laptop hardware, like
    • System
    • Input/output
    • Networking
    • Audio
    • Video
    • USB
    • Firewire
  • For each subsection provide relative testcases with a link to the current ISO build and the instruction to perform the test that point to the testcase itself.

  • As for other testing project, each bug reported is automatically linked to launchpad and it would be really easy to adapt a tag system.
  • Important laptop info needs to be added. It's the output of:
    • dmidecode -s system-manufacturer → Name of the manufacturer

    • dmidecode -s system-product-name && dmidecode -s system-version → Model of laptop

    • lspci (lspci -vvn),lsusb, lshw -short → Hardware info

    • uname -a → Kernel used (if necessary)

    • etc.
  • Three different solutions are suggested below:
    1. Put info in the existent Comment field in the test report increasing its size to contain what necessary. Alternatively (and much better) all this info could be added in some new and specific text fields to fit laptop testing needs. The user could be informed, with a note just alongside of the field. Data should be shared through the tasks/testcases.The following mockup explain this solution.

      mockup report 1.png

    2. Add new fields about laptop hardware in the profile page so there is no need to fill all field for each report done. This solution require to make those profile fields visible to anyone. If someone have more than one laptop to test, he has to create multiple profiles, one for each laptop.

      mockup login 2.png

    3. This would be the best solution, but the more invasive one. Laptop hardware info have to be reported in the profile page but it's possible to add more than one laptop per profile. The tested laptop need to be selected in the report page.

      mockup profile 3.png mockup report 3.png

  • In this way we can automatically have a database in which data could be aggregated and filtered, really useful to testers and developers.

UI Changes

  • Very little, the Laptop Tracker will have the same structure of the others, just some text fields added.

Code Changes

  • Level of code changes depends on the solution chosen.
    1. The Code would be the same implemented in other trackers, some adjustments are probably needed like adding new text fields. → Low invasive
    2. As for the solution #1, jusr a few adjustment but a view system is needed for the profile pages. Users needs to create a profile for each laptop he wants to test. → Low/Medium invasive

    3. The Tracker needs to be revised to support multiple laptop per profile. → High invasive


QATeam/Specs/LaptopTestingTrackerSystem (last edited 2010-10-20 19:58:31 by primes2h)