Fedora Quality Assurance
Fedora is a rapidly progressing distribution and collection of Free software. We have detailed quality assurance procedures to help maintain a robust platform.
What is QA, anyway?
It's short for Quality Assurance. In general, software QA involves monitoring every stage of the software development process to ensure quality.
The Fedora QA team helps hunt down bugs in Fedora. We work with the Fedora developers, release engineers, and community members at every stage of the Fedora lifecycle to help prevent bugs from getting into the software, and to help find and fix the bugs that slip through the cracks.
There are four major tasks that the QA Team performs: Bug Triage, Update Testing, Release Testing, and Tool Development.
If you want to join the Fedora QA Team, you should consider getting an account in the Fedora Account System. See below for more info!
How Can I Help?
Update Testing
This is the process of testing newly-built updates for the stable releases, in order to catch incomplete fixes and regressions and other nastiness. All you need to do to start getting test updates is enable the 'fedora-updates-testing' repository.
New updates are listed in the Bodhi tool at http://bodhi.fedoraproject.org/. The QA team tests the new updates and adds comments about whether they work or not. The better-tested an update is, the sooner it can be released.
(Note that you currently need a Fedora Account to log in to Bodhi.)
Bug Triaging
Bug Triage is the art of filtering new bug reports in Bugzilla to make sure they get to the right people. We hope to start training sessions to help new folks get involved soon (February 2008).
All you need to help with bug triage is a good eye for detail and some account sign-ups. More information about bug triage is at the BugZappers page.
Release Testing
Release Testing is the process of testing Rawhide - that's the codename we give to the next release before it gets a real name.
Release Testing has two key tasks: 1) testing installation and upgrades, and 2) testing new features in the release and making sure key applications behave as expected. This testing helps decide which features will make it into the release, and what bugs will block the release.
We are replacing the old TreeTestingTemplate with a detailed test plan for Fedora 9. This plan will be maintained and improved by the QA team.
The QA team also works with developers and release engineers to maintain the ReleaseCriteria , which is used to determine what bugs count as release blockers.
Release testing is exciting work - you get to play with new Fedora releases before they're finished! Ideally you should have a spare computer to test installations on. You should definitely join the fedora-test-list mailing list - that's where other people running Rawhide gather to talk about what's working and what isn't.
You can be a big help by testing bugs that the Fedora developers have tagged as needing to be tested. This is where a fix is believed to exist, however confirmation is desired by independent testers. The list of bugs is here. , An RSS feed is also available at http://feeds.feedburner.com/NeedsRetesting
Tool Development
The QA Team also develops tools to make testing easier and more reliable. Some example tools are SNAKE and python-bugzilla . We're also involved in development of Bodhi and improvements to Bugzilla .
There are some very interesting plans for QA tools - QA/Beaker is an idea for a fully automated test lab. Developing Open Source QA tools is complex, challenging stuff at the cutting edge of the field. Contact Will if you're up to the challenge of building new tools for Fedora QA.
How Do I Join?
Join the Mailing List
Join the fedora-test-list@redhat.com email list -- QA meetings, agendas and summaries are posted to this list regularly. If you have questions about QA and testing, this is the place to ask.
Join the QA discussions and meetings
Fedora testers and developers can be found on the Freenode Internet Relay Chat (IRC) network. See this page for more information about IRC and Fedora.
Join #fedora-qa for discussions and #fedora-meeting for weekly IRC meetings. The QA meeting is usually Wednesdays at 1500UTC - check the Fedora meeting channel page for more details about the use of #fedora-meeting, and watch fedora-test-list for meeting agendas and summaries.
Get a Fedora Account
Create an account in the Fedora Account System :
- Visit the account system home: https://admin.fedoraproject.org/accounts/
- Click on 'Apply for a new account' and fill in the blanks.
- After you create your account, request an email with instructions to sign the Contributor License Agreement (CLA): https://admin.fedoraproject.org/accounts/send-cla.cgi
- Request membership in the 'fedorabugs' group in the account system.
Create a Bugzilla Account
Make sure you have an account in Bugzilla .
The email address that you use for your bugzilla account should be the same email address as you use for all things related to Fedora QA.
Join the Wiki
You can add your name to the QA contributor list. See Help:Editing for more information about the wiki.
Further Info and Links
Regular Meetings
- QA/Meetings
- QA Meeting / Bug Day Schedule: ICAL , Google Calendar
Fedora Release Criteria
Release Test Plans
- QA/TestPlans/Fedora9Install - Installer test plan for Fedora 9
- QA/TestResults/Fedora9Install/FinalRelease - Test results from F9 Final
- QA/TreeTestingTemplate - old installer test results matrix. (obsolete, do not use)
Fedora 10 Alpha Test Plans
- QA/TestResults/Fedora10Install/Alpha - Fedora 10 Alpha Test results
Test Cases
Templates
- QA/TestCases/TestCaseTemplate - for new test cases
- QA/TestPlans/TestPlanTemplate - for new test plans (a plan is a collection of test cases)
- QA/TestResults/TestSummaryTemplate - for test plan results
- QA/HowToTestTemplate - older template for functional test cases (obsolete, do not use)