From Fedora Project Wiki

< QA

(update release validation instructions a bit)
(remove onboarding call link whose domain went stale)
 
(17 intermediate revisions by 9 users not shown)
Line 14: Line 14:


There are five steps you can take to get up to speed with QA efforts (in rough order of precedence):  
There are five steps you can take to get up to speed with QA efforts (in rough order of precedence):  
* Create a [[Account_System|FAS account]]
* Subscribe to the {{fplist|test}} mailing list
* Subscribe to the {{fplist|test}} mailing list
* [[#self-introduction|Introduce yourself]] to the team!
* [[#self-introduction|Introduce yourself]] to the team!
* Create a [https://bugzilla.redhat.com/createaccount.cgi Bugzilla Account] (This should be the address you use below when creating your FAS account in the next step)
* Contact to a/several sponsor.
* Create a [https://fedoraproject.org/wiki/Account_System?rd=FAS FAS Account] and join the FAS QA Group
* Create a [https://bugzilla.redhat.com/createaccount.cgi Bugzilla Account] (ideally using the same address as the one associated with your FAS account)
* Join {{fpchat|#fedora-qa}} IRC channel on Freenode
* Join {{matrix|#quality:fedoraproject.org}} Matrix room, see [https://docs.fedoraproject.org/en-US/project/communications/ Communication in Fedora]
* [[#onboarding-call|Attend the onboarding call]]


= What are you looking to do? =
= What are you looking to do? =


Whether you are looking to test a [[Releases|stable release]], a new package from [[QA:Updates_Testing|updates-testing]], a [[Releases/Branched|Branched]] [https://fedoraproject.org/get-prerelease pre-release], or the bleeding edge [[Releases/Rawhide|Rawhide]], QA has a way for you to contribute and get involved! We need people who like to push all the buttons, use all the command line options, verify all the documentation, review things for usability, and suggest future features - especially for anything that's undergone major [[Changes/Policy|change]] in a [[:Category:ChangeAcceptedF{{FedoraVersionNumber}}|recent]] or [[:Category:ChangeAcceptedF{{FedoraVersionNumber|next}}|pending]] release.
Whether you are looking to test a [[Releases|stable release]], a new package from [[QA:Updates_Testing|updates-testing]], a [[Releases/Branched|Branched]] [https://fedoraproject.org/get-prerelease pre-release], or the bleeding edge [[Releases/Rawhide|Rawhide]], QA has a way for you to contribute and get involved! We need people who like to push all the buttons, use all the command line options, verify all the documentation, review things for usability, and suggest future features - especially for anything that's undergone major [[Changes/Policy|change]] in a recent or pending release.


'''If you want to:'''
'''If you want to:'''
Line 41: Line 43:
* [[#triage | Triage bugs]]
* [[#triage | Triage bugs]]


For all of those tasks, it would be good to have some familiarity with our Bugzilla instance. A lot of contribution to Fedora QA comes through bug reports. All you need is a [http://bugzilla.redhat.com Bugzilla] account: [https://bugzilla.redhat.com/createaccount.cgi create your account]. Please make sure that the email addresses for your Fedora account and the Bugzilla account are the same. Our [[BugsAndFeatureRequests| bug reporting practices]] provide some good background for filing bugs. If you want to discuss the bugs before reporting, QA members can be found on the {{fplist|test}} mailing list and the {{fpchat|#fedora-qa}} IRC channel.
For all of those tasks, it would be good to have some familiarity with our Bugzilla instance. A lot of contribution to Fedora QA comes through bug reports. All you need is a [http://bugzilla.redhat.com Bugzilla] account: [https://bugzilla.redhat.com/createaccount.cgi create your account]. Please make sure that the email addresses for your Fedora account and the Bugzilla account are the same. Our [[BugsAndFeatureRequests| bug reporting practices]] provide some good background for filing bugs. If you want to discuss the bugs before reporting, find QA members in one of our [[QA#Communicate|communication channels]].


= Specifics =
= Specifics =
Line 48: Line 50:
== Introduce yourself and join the team! ==
== Introduce yourself and join the team! ==


Before getting stuck in, why not introduce yourself? It's not compulsory, but we like to say "hi!" to new members. Just subscribe to the {{fplist|test}} mailing list and send a mail with a topic like "Self-introduction: (Your Name)". Just say that you're interested in helping with QA, include your IRC nickname if you have one, and, if you like, include some information on your Fedora / Linux background. Here's an [http://www.redhat.com/archives/fedora-test-list/2009-March/msg00671.html example mail].
Before getting stuck in, why not introduce yourself? It's not compulsory, but we like to say "hi!" to new members. Just subscribe to the {{fplist|test}} mailing list and send a mail with a topic like "Self-introduction: (Your Name)". Just say that you're interested in helping with QA, include your FAS nickname, and, if you like, include some information on your Fedora / Linux background. Here's an [http://www.redhat.com/archives/fedora-test-list/2009-March/msg00671.html example mail].
 
If you send a self-introduction mail at the same time as you apply to the FAS group, a group sponsor will approve your membership right away. If you do not, a sponsor will contact you directly to confirm your interest before approving your group membership.
 
{{Anchor|onboarding-call}}
== Attend an Onboarding Call ==
 
Welcoming all newcomers to get a head start and learn the right way to start off with Fedora QA contributions. The onboarding session is one hour of video call with a Fedora QA team member where the new contributors will have an overview of the whole contribution pathway. The idea is to emphasize on the best practices and helping the new contributors figure out the right area of interest. The agenda is very simple and intended to let anyone pick it up without any prerequisites. Watch [https://calendar.fedoraproject.org/QA/ Fedocal] as it will inform about the next onboarding call. Check one of the [https://www.youtube.com/watch?v=ASQmkOrB_DY past recordings].


{{Anchor|updates}}
{{Anchor|updates}}
Line 55: Line 64:
Another easy way to contribute to Fedora QA is to help test official updates for stable Fedora releases before they're released. See [[QA:Updates Testing]] for instructions on how to test and report issues with these updates.
Another easy way to contribute to Fedora QA is to help test official updates for stable Fedora releases before they're released. See [[QA:Updates Testing]] for instructions on how to test and report issues with these updates.


== Testing Fedora pre-releases ==
== Testing Fedora Beta releases ==


Before an official Fedora release comes out, Alpha and Beta builds - known collectively as ''pre-releases'' - are made available. You can contribute by installing these pre-releases and testing them, just as you would a stable release. If you continuously run the pre-release and update regularly you can also [[QA:Update_feedback_guidelines|provide feedback ("karma")]] to [[QA:Updates_Testing|candidate update builds]] - effectively doubling the number of things you can test. For information on getting and installing pre-releases, see [http://fedoraproject.org/get-prerelease this page]. Report any issues you find to [http://bugzilla.redhat.com Bugzilla] - complete instructions are here: [[BugsAndFeatureRequests]].
Before an official Fedora release comes out, a Beta release is made available. You can contribute by installing these Betas and testing them, just as you would a stable release. If you continuously run the pre-release and update regularly you can also [[QA:Update_feedback_guidelines|provide feedback ("karma")]] to [[QA:Updates_Testing|candidate update builds]] - effectively doubling the number of things you can test. When a Beta release is available, you will be able to find it linked from [https://alt.fedoraproject.org/ this page] - if there is no mention of a Beta there, it means there isn't currently one available. Report any issues you find to [http://bugzilla.redhat.com Bugzilla] - complete instructions are here: [[BugsAndFeatureRequests]].


{{Anchor|release-validation}}
{{Anchor|release-validation}}
== Release validation ==
== Release validation ==


Line 72: Line 82:
== Joining Test Days ==
== Joining Test Days ==


The Fedora QA group holds regular Test Days, where we get together on IRC and test a specific aspect of Fedora, often with the involvement of a developer who works in that area. See the [[QA/Test_Days|Test Days]] page for more information on when and where these are held, and how to join in or even [[QA/SOP_Test_Day_management|schedule one of your own]]. [[Test_Day:Current|This page]] should always direct you to the current, most recent, or soon-to-happen Test Day - see if it's one you'd like to join in!
The Fedora QA group holds regular Test Days, where we get together on Matrix and test a specific aspect of Fedora, often with the involvement of a developer who works in that area. See the [[QA/Test_Days|Test Days]] page for more information on when and where these are held, and how to join in or even [[QA/SOP_Test_Day_management|schedule one of your own]]. [[Test_Day:Current|This page]] should always direct you to the current, most recent, or soon-to-happen Test Day - see if it's one you'd like to join in!


{{Anchor|create-testcases}}
{{Anchor|create-testcases}}
Line 82: Line 92:
== Developing tools ==
== Developing tools ==


Some members of the Fedora QA team are involved in developing and maintaining tools to help make testing more efficient. Some of the tools we wrote that are already in use (but under constant development!) include [[Taskotron]] (which replaced the older [[AutoQA]]), [https://fedorahosted.org/python-bugzilla/ python-bugzilla] and the [http://qa.fedoraproject.org/blockerbugs/ blocker bug tracking web app]. We also use [https://fedorahosted.org/bodhi/ Bodhi], [https://bugzilla.redhat.com/ Bugzilla] and [[Fedora Easy Karma|fedora-easy-karma]]. Tool development is a great way to apply engineering skills to QA. Drop by the {{fpchat|#fedora-qa}} IRC Channel or the {{fplist|qa-devel}} mailing list if you want to get involved building tools.
Some members of the Fedora QA team are involved in developing and maintaining tools to help make testing more efficient. Some of the tools we wrote that are already in use (but under constant development!) include the [https://pagure.io/fedora-qa/blockerbugs blocker bug tracking web app], a [https://pagure.io/fedora-qa/testdays-web web front end for Test Day results], and [https://pagure.io/fedora-qa/fedora_openqa scheduling tools] for [[OpenQA]]. We also use [https://fedorahosted.org/bodhi/ Bodhi], [https://bugzilla.redhat.com/ Bugzilla] and [[Fedora Easy Karma|fedora-easy-karma]]. See more of them in [[QA:Tools]]. Tool development is a great way to apply engineering skills to QA. [[QA#Communicate|Get in touch with us]] if you want to get involved building tools.


{{Anchor|triage}}
{{Anchor|triage}}
== Triaging and managing bugs ==
== Triaging and managing bugs ==


Line 101: Line 112:
The [https://admin.fedoraproject.org/mailman/listinfo/test mailing list] is a great place to raise any questions or problems you are having. Experienced QA Members are more than happy to act as mentors for new members to help them get started with QA. Triaging bugs does '''not''' mean that you have to understand the bugs and solve them yourself. It simply means you should be able to look at new bugs, and report if they are duplicates, if more information is needed, or if it is filed under the wrong component.
The [https://admin.fedoraproject.org/mailman/listinfo/test mailing list] is a great place to raise any questions or problems you are having. Experienced QA Members are more than happy to act as mentors for new members to help them get started with QA. Triaging bugs does '''not''' mean that you have to understand the bugs and solve them yourself. It simply means you should be able to look at new bugs, and report if they are duplicates, if more information is needed, or if it is filed under the wrong component.


There is no requirement of programming knowledge. However, being familiar with Fedora and Linux in general will be extremely useful. A more complete guide is [https://fedoraproject.org/wiki/QA/Triage here]. <!-- This could also just point to the mailing list or irc, but I figured they would just get pointed back to this -->
There is no requirement of programming knowledge. However, being familiar with Fedora and Linux in general will be extremely useful. A more complete guide is [[QA/Triage|here]]. <!-- This could also just point to the mailing list or matrix, but I figured they would just get pointed back to this -->


[[Category:QA]]
[[Category:QA]]

Latest revision as of 14:16, 14 March 2024


Welcome!

This page outlines all the activities you can get involved in to help with Fedora QA and is meant to guide you through the QA ecosystem. It's easy to get involved and we love to welcome people to the group! The first thing you probably want to do is get plugged in to all the right sources of information for Fedora QA.

There are five steps you can take to get up to speed with QA efforts (in rough order of precedence):

What are you looking to do?

Whether you are looking to test a stable release, a new package from updates-testing, a Branched pre-release, or the bleeding edge Rawhide, QA has a way for you to contribute and get involved! We need people who like to push all the buttons, use all the command line options, verify all the documentation, review things for usability, and suggest future features - especially for anything that's undergone major change in a recent or pending release.

If you want to:

I want to do something else!

For all of those tasks, it would be good to have some familiarity with our Bugzilla instance. A lot of contribution to Fedora QA comes through bug reports. All you need is a Bugzilla account: create your account. Please make sure that the email addresses for your Fedora account and the Bugzilla account are the same. Our bug reporting practices provide some good background for filing bugs. If you want to discuss the bugs before reporting, find QA members in one of our communication channels.

Specifics

Introduce yourself and join the team!

Before getting stuck in, why not introduce yourself? It's not compulsory, but we like to say "hi!" to new members. Just subscribe to the test mailing list and send a mail with a topic like "Self-introduction: (Your Name)". Just say that you're interested in helping with QA, include your FAS nickname, and, if you like, include some information on your Fedora / Linux background. Here's an example mail.

If you send a self-introduction mail at the same time as you apply to the FAS group, a group sponsor will approve your membership right away. If you do not, a sponsor will contact you directly to confirm your interest before approving your group membership.

Attend an Onboarding Call

Welcoming all newcomers to get a head start and learn the right way to start off with Fedora QA contributions. The onboarding session is one hour of video call with a Fedora QA team member where the new contributors will have an overview of the whole contribution pathway. The idea is to emphasize on the best practices and helping the new contributors figure out the right area of interest. The agenda is very simple and intended to let anyone pick it up without any prerequisites. Watch Fedocal as it will inform about the next onboarding call. Check one of the past recordings.

Testing official package updates before they are released

Another easy way to contribute to Fedora QA is to help test official updates for stable Fedora releases before they're released. See QA:Updates Testing for instructions on how to test and report issues with these updates.

Testing Fedora Beta releases

Before an official Fedora release comes out, a Beta release is made available. You can contribute by installing these Betas and testing them, just as you would a stable release. If you continuously run the pre-release and update regularly you can also provide feedback ("karma") to candidate update builds - effectively doubling the number of things you can test. When a Beta release is available, you will be able to find it linked from this page - if there is no mention of a Beta there, it means there isn't currently one available. Report any issues you find to Bugzilla - complete instructions are here: BugsAndFeatureRequests.

Release validation

The QA group co-ordinates planned testing of the installation process and basic functionality before each Fedora release and pre-release is made, to ensure they reach certain standards known as the Fedora Release Criteria. See the release validation test plan page for more information on this process and how you can contribute to it. Also look out for mails to the list that announce composes "nominated for testing" - these mails contain instructions.

Testing Rawhide

Rawhide is the development version of Fedora. Running Rawhide isn't for everyone, but for moderately experienced users who have a spare test system available or can run it in a virtual machine, testing Rawhide is a great way to contribute to ensuring future releases will be high quality. See Rawhide page for instructions on how to install or upgrade to, and test. You can test Rawhide without ever needing to install it by using the nightly live builds.

Joining Test Days

The Fedora QA group holds regular Test Days, where we get together on Matrix and test a specific aspect of Fedora, often with the involvement of a developer who works in that area. See the Test Days page for more information on when and where these are held, and how to join in or even schedule one of your own. This page should always direct you to the current, most recent, or soon-to-happen Test Day - see if it's one you'd like to join in!

Creating test cases

As well as simply keeping a look out for problems, the QA group develops structured test cases and test plans. See the Category:Test Cases and Category:Test Plans pages for information on the test cases currently available. The test case creation process will tell you how to create test cases.

Developing tools

Some members of the Fedora QA team are involved in developing and maintaining tools to help make testing more efficient. Some of the tools we wrote that are already in use (but under constant development!) include the blocker bug tracking web app, a web front end for Test Day results, and scheduling tools for OpenQA. We also use Bodhi, Bugzilla and fedora-easy-karma. See more of them in QA:Tools. Tool development is a great way to apply engineering skills to QA. Get in touch with us if you want to get involved building tools.

Triaging and managing bugs

Once bugs are reported, QA should make sure they are addressed by the right people and don't get stuck in the process.

What is Involved in Bug Triaging?

Bug triagers make sure that:

  • Bug reports have the information developers need to reproduce and fix them.
  • Bugs are assigned to the right component and version.
  • Duplicate bugs are found and labelled.
  • Feature requests reported as bugs are properly reported.
  • Bugs already fixed are closed.

The mailing list is a great place to raise any questions or problems you are having. Experienced QA Members are more than happy to act as mentors for new members to help them get started with QA. Triaging bugs does not mean that you have to understand the bugs and solve them yourself. It simply means you should be able to look at new bugs, and report if they are duplicates, if more information is needed, or if it is filed under the wrong component.

There is no requirement of programming knowledge. However, being familiar with Fedora and Linux in general will be extremely useful. A more complete guide is here.