-
Notifications
You must be signed in to change notification settings - Fork 696
Manual QA
Hécate Moonlight edited this page May 2, 2023
·
9 revisions
- Go to https://github.com/orgs/haskell/projects/3/ and pick a ticket in the "Waiting" column; a. If you are not already part of the QA Team, let yourself known in the ticket and we'll give you the right to assign yourself to the ticket.
- Assign yourself to it and move the ticket to the "Testing" column;
- If this is a bug fix, try and reproduce the described bug on your local setup; If you can reproduce the issue, proceed. If not, we are also interested in the reasons why the bug may not get triggered in the first place.
- Update your local copy of cabal so that it includes the bugfix;
- Follow the instructions in the QA Notes section of either the ticket or the PR, with your local copy of the
cabal
command-line tool; - Signal any problem you encounter while following the instructions to the author of the PR or the ticket. You may encounter problems because the author has not been precise enough, or because some things were implicitly assumed (global configuration, presence of other tools, etc);
- Once you can confidently reproduce the instructions without problems, move the item to the "Testing Approved" column;
Rinse, and repeat.
For your QA testing you will need two cabal
binaries, one to reproduce the bug and one (compiled from HEAD) to test the fix. Some setup suggestions:
- a simple one is to compile
HEAD
and copy the binary to~/.local/bin/cabal-new
, this way you can test old behaviour withcabal
and new one withcabal-new
. - Another idea is to compile
cabal-install
, set an environment variable to the binary path (bash syntax:export cabhead=$(cabal list-bin cabal)
) and invoke it later as$cabhead build …
.