Usability testing is an irreplaceable tool to understand user experience and take decisions while doing design iterations. Here are a few guidelines to take the most of it.

Checklist

- [ ] Recruiting
  - [ ] [Schedule slots](https://tails.net/contribute/how/user_experience/testing#scheduling)
  - [ ] Create screening survey
  - [ ] Test screening survey
  - [ ] Send link to screening survey
  - [ ] Select participants using [screening spreadsheet](https://gitlab.tails.boum.org/tails/ux/-/raw/master/tools/participants_screener.fods) in `ux/private`
  - [ ] Answer to all candidates using [email templates](https://tails.net/contribute/how/user_experience/screening)
  - [ ] Only confirm after sound check
- [ ] Preparation
  - [ ] Prepare the tasks
  - [ ] Prepare a fallback bridge in QR code (always)
  - [ ] Prepare the testing image
    - [ ] `sed -i "s@${HOMEPAGE}testing/@${HOMEPAGE}@" config/chroot_local-hooks/11-localize_browser`
  - [ ] Do a pilot test
  - [ ] Adapt [research information sheet](https://gitlab.tails.boum.org/tails/ux/-/raw/master/tools/research_information_sheet.fodt)
  - [ ] Adapt [consent form](https://gitlab.tails.boum.org/tails/ux/-/raw/master/tools/consent_form.fodt)
  - [ ] Adapt [checklist](https://gitlab.tails.boum.org/tails/ux/-/raw/master/tools/user_testing_checklist.fodt)
    - [ ] Explicit reset procedure
    - [ ] Explicit recording procedure
  - [ ] Test the [recording setup](https://tails.net/contribute/how/user_experience/recording)
  - [ ] Prepare incentives
  - [ ] Print
    - [ ] Research information sheet
    - [ ] Consent forms
    - [ ] Tasks
- [ ] Analysis
  - [ ] Create [rainbow table](https://gitlab.tails.boum.org/tails/ux/-/raw/master/tools/rainbow_table.fods)
    - [ ] Fill in demographics tab of rainbow table
    - [ ] Document issues that were reported in the last round of similar tests
    - [ ] Mark new issues
    - [ ] Strike through solved issues
    - [ ] Link rainbow table from here: XXX
  - [ ] Document on GitLab
    - [ ] Document findings in existing issues
    - [ ] Create missing issues
    - [ ] Link all issues to this one
    - [ ] Link related issues together
    - [ ] Verify labels on all issues
  - [ ] Prioritize work together with the developers
    - [ ] Document benefit
    - [ ] Document cost
    - [ ] Identify top-priority tasks
    - [ ] Identify low-hanging fruits
  - [ ] Prepare [video clips](https://tails.net/contribute/how/user_experience/clip)
  - [ ] Share highlights on tails-dev and link from here: XXX
- [ ] Wrap up
  - [ ] Improve template screening survey
  - [ ] Improve template rainbow table
  - [ ] Save candidates in participants.ods
  - [ ] Add to achievements.mdwn
  - [ ] Get reimbursed for travel, incentives, etc.
  - [ ] Improve [checklist](https://tails.net/contribute/how/user_experience/testing/)

Scheduling

It's good to have 3-hours slots with actual tests from 00:30 to 02:30.

It's interesting to have 2 tests each day and spread them out as much as possible to adjust to no-shows and fix the most obvious issues between them.

Fridays and Saturdays are better than Sundays and week days.

References