QA Procedures overview

From Audacity Wiki
Revision as of 12:22, 30 April 2021 by James (talk | contribs) (QA and RM work together.)
Jump to: navigation, search
This is a set of notes outlining Audacity QA procedures

Alpha testing

We continually test the Master branch alpha builds hosted here on GitHub:

Referenced by the commit log on GitHub:

I, (Peter Sampson) personally, tend to be bold (live on the bleeding-edge) and use the alphas for my production work, as the things I do are mostly easily repeatable.


Release Candidates

When the RM is ready – Release Candidates are built for external (and further internal) testing on all three platforms:

Bulb icon QA and release planning work together. QA is often reviewing recent commits to GitHub to understand recent changes. The whole process of rating bugs P1 to P5 is about sharing (or not sharing) responsibility. A P2 bug that is allowed to go through to release is a shared responsibility between QA and RM

Bug finding

So how do we find bugs?

  1. Our own testing – reports via dev and quality email lists
  2. User reports on the Forum – review daily at least
  3. User reports on the dev and quality email lists – review daily at least
  4. User reports on the three Facebook sites – review daily at least


Feature Requests

Feature Requests reside in various places:


Logging Bugs

All bugs are logged in Bugzilla bug-tracker https://bugzilla.audacityteam.org/

  • A key part of the bug entry is the “Steps to Reproduce” – mandatory, the bug will not log without it.
  • Platforms: we need to ascertain and record if the bug is single or multi-platform
  • Priority setting: this is perhaps the trickiest part to decide. We work with five levels
    1. P1: these are top priority and block releases
    2. P2: important but RM decides if they can be waved through into release
    3. P3: must have a Release Note and ideally a workaround
    4. P4 & P5: bugs are not release noted. Many of these may be "enhancement issues"
    5. See: Bug Lists > Bugs by Priority


Testing fixed bugs

When a bug is fixed by a developer it gets marked DEVEL FIX Made If subscribed (I’m subscribed to “all bugs”) you get an email on the status change. In theory this should be enough to track fixed bugs that need testing – but I found that hard to manage, so I created a workbook in the Wiki:

Monitoring

This enables me to:

  1. See it all in a glance
  2. monitor the progress of testing on the three platforms
  3. Keep a record of bugs fixed for the current alpha

Documenting

At release time we copy over the key fixed bugs to the Manual’s What’s New… page:

See the 3.0.2 released version:


Monitoring outstanding bugs

See the table in Bugzilla

or with added ENH enhancements


Comparison Speed testing

I like to do comparison speed testing between versions for:

  1. I/O project open and close
  2. Exports and Imports
  3. Effects (and Generators and Analyzers)
I have developed Macros for this.


Manual

For me, the Manual is a key part of QA – plus it’s now integrated as a part of the app via the “?” help buttons in many error messages and warnings. Given the lack of any specs the manual can often be a good guide as to how the app is supposed to work for the user.

There are always two current manuals

I find it easiest to keep the alpha Manual in lock-step with changes to the app, new developments and bug fixes – playing catch-up later is too hard work.
Bulb icon The big strength of the Manual is that it saves support people's time. When there are 'How do I?' queries, pointing people at the Manual is a huge time saver - and the Manual has been developed as a result of decades of such questions.
  • Plus there are now many links to the Manual from ? help buttons in Effects, error messages and warnings.


Connie

An important couple of pages in the manual help us to maintain consistency in the Manual (and to some extent the app) – we anthropomorphize this and refer to this as “Connie”


Wiki

The Wiki should not need checking for malefactors as accounts are strictly limited:

The Wiki has a shared dev/QA section:

Pages of QA interest:


Wikipedia

From time to time the Wikipedia page needs checking for malefactors who may corrupt the page:

The page appears to have a "guardian-angel" in the shape of Adam Hunt.