Bugzilla Tutorial
Bugzilla Tutorial
Bugzilla Tutorial
Mikko Rusama Researcher, SoberIT [email protected] 14.10.2003
Updated 14.10.2005 by Lauri.Svan at hut dot fi: Each group has its own bugzilla, therefore no restrictions to bugzilla use
HELSINKI UNIVERSITY OF TECHNOLOGY 1
SoberIT
Contents
Introduction
SoberIT
What is Bugzilla?
See: http://www.bugzilla.org
3
SoberIT
Who is using Bugzilla? Netscape/AOL RockLinux Mozilla.org Creative Labs (makers of SoundBlaster) NASA The Apache Foundation Red Hat Software The Gnome Foundation SuSe Corp Ximian The Horde Project AbiSource Linux-Mandrake Real Time Enterprises, Inc Eggheads.org Strata Software
http://www.bugzilla.org/docs216/html/faq.html
4
SoberIT
Use the Bugzilla Query Form For more information, see the tutorial of how to find reported
bugs. http://www.mozilla.org/quality/help/beginningduplicate-finding.html
SoberIT
SoberIT
1.Reproducible
If an engineer can't see it or conclusively prove that it exists, the engineer will probably stamp it "WORKSFORME" or "INVALID", and move on to the next bug. Every relevant detail you can provide helps.
2.Specific
The quicker the engineer can isolate the issue to a specific problem, the more likely it'll be expediently fixed. If a programmer or tester has to decipher a bug, they may spend more time cursing the submitter than solving the problem In testing WWW pages, try to isolate what on the page is triggering the crash, and include it as an HTML snippet in the bug report if possible.
7
SoberIT
Useful bug reports are ones that get bugs fixed! Be non-judgmental in reporting bugs.
Bug reports need to be non-judgmental, non-personal and noninflammatory. Reports should be written against the product, not the person, and state only the facts.
SoberIT
T-76.115 https://newclass.soberit.hut.fi/GROUP_ALIAS/
Userid is your e-mail address (in most cases, your HUT unix
account name + @cc.hut.fi) Password is the same as in the course return system
Submit!
Create a template?
SoberIT
Where did you find the bug? Product - In which product did you find the bug? Version - In which product version did you find the bug? Component - In which component does the bug exist? Platform - On which hardware platform did you find this bug? OS - On which Operating System (OS) did you find this bug?
18
SoberIT
Where did you find the bug? Product - In which product did you find the bug?
We're not yet using this field. Just leave the default value as you found it.
e.g. Macintosh, SGI, Sun, PC, ... If you know the bug happens on all hardware platforms, choose 'All'. Otherwise, select the platform that you found the bug on, or "Other" if your platform isn't listed.
e.g. Linux, Windows NT, Mac OS 8.5. If you know the bug happens on all OSs, choose 'All'. Otherwise, select the OS that you found the bug on, or "Other" if your OS isn't listed.
19
SoberIT
This item defaults to unspecified'. To determine the most appropriate severity for a particular bug, click on the Severity link for a full explanation of each choice, from Critical to Enhancement.
20
SoberIT
Severity Values
Unspecified the default value, severity not specified Blocker - Blocks development and/or testing work Critical - crashes, loss of data, severe memory leak Major - major loss of function Minor - minor loss of function, or other problem where easy workaround is present Trivial - cosmetic problem like misspelled words or misaligned text Enhancement - Request for enhancement, ideas
21
SoberIT
Priority
22
SoberIT
Who will be following up on the bug? Assigned To - Which engineer should be responsible for fixing
this bug?
Cc - Who else should receive e-mail updates on changes to this bug? You would not normally change either of these fields from their default values!
In this course default component owner is randomly chosen, so you may need to change the values.
23
SoberIT
Assigned To: Which engineer should be responsible for fixing this bug?
Bugzilla will automatically assign the bug to a default engineer upon submitting a bug report; the text box exists to allow you to manually assign it to a different engineer. Default owner is one of the students (the first one listed in the CSV input file) To see the list of default engineers for each component, click on the Component link. Every time this field changes, the status changes to NEW to make it easy to see which new bugs have appeared on a person's list
Cc: Who else should receive e-mail updates on changes to this bug?
List the full e-mail addresses of other individuals who should receive an e-mail update upon every change to the bug report. You can enter as many e-mail addresses as you'd like; e-mail addresses must be separated by commas, with no spaces between the addresses. 24
SoberIT
25
SoberIT
URL - On what URL did you discover this bug? Summary - How would you describe the bug, in approximately 60 or fewer characters? Description - What else can you tell the engineer about this bug?
26
SoberIT
If you encountered the bug on a particular URL, please provide it (or, them) here. If you've isolated the bug to a specific HTML snippet, please also provide a URL for that, too or, preferably, return to the bug after you've submitted it and add the HTML snippet as an attachment.
Summary - How would you describe the bug, in approximately 60 or fewer characters?
A good summary should quickly and uniquely identify a bug report. Otherwise, developers cannot meaningfully query by bug summary, and will often fail to pay attention to your bug report when reviewing a 10 page bug list. Think of it as a "title". A summary of "Drag-scrolling any web page crashes Mac builds" is a useful title. "Crash" or "Drag Crash" would be examples of a bad title.
27
SoberIT
Overview Description - More detailed expansion of summary. Steps to Reproduce - The minimal set of steps necessary to trigger the bug. Include any special setup steps. Actual Results - What the application did after performing the above steps. Expected Results - What the application should have done, were the bug not present. Build Date & Platform - Date and platform of the build that you first encountered the bug in. Additional Builds and Platforms - Whether or not the bug takes place on other platforms or browsers. Additional Information - Minimized HTML snippets, Talkback crash IDs, and any other debugging information. (ATTACHEMENT)
28
SoberIT
Bug life-cycle
Status and Resolution
29
Bug Life-Cycle
Unconfirmed
Transition is allowed from any open state to the Resolved state
New
Assigned
Resolved
Verified
Reassign
SoberIT
Bug Status Open States NEW - This bug has recently been added to the assignee's list of
bugs and must be processed.
Bugs in this state may be accepted, and become ASSIGNED, passed on to someone else, and remain NEW, or resolved and marked RESOLVED.
ASSIGNED - This bug is not yet resolved, but is assigned to someone who thinks they can fix it.
From here bugs can be given to another person and become NEW, or resolved and become RESOLVED.
REOPENED - The bug was once resolved, but the resolution was deemed incorrect.
For example, a WORKSFORME bug is REOPENED when more information shows up and the bug is now reproducible. From here bugs are either marked ASSIGNED or RESOLVED.
31
SoberIT
Users who have the correct permissions may confirm this bug, changing its state to NEW. A bug may be directly resolved and marked RESOLVED but usually a bug will be confirmed by the person to whom it is assigned. Usually, an UNCONFIRMED bug will be left unconfirmed until someone has verified that the bug the reporter submitted actually occurs.
Bugzilla administrator may specify the number of votes a bug in this product needs to automatically get out of the UNCONFIRMED state. THIS BUG STATE IS NOT USED IN THIS COURSE!
32
SoberIT
RESOLVED - A resolution has been made, and it is awaiting verification by the QA.
From here bugs are either re-opened and become REOPENED, are marked VERIFIED, or are closed for good and marked CLOSED.
VERIFIED- QA has looked at the bug and the resolution and agrees that the appropriate action has been taken.
Bugs remain in this state until the product they were reported against actually ships, at which point they become CLOSED.
CLOSED - The bug is considered dead, the resolution is correct, and the product the bug has been reported against is terminated or shipped.
Any zombie bugs who choose to walk the earth again must do so by becoming REOPENED. This state is rarely ever used.
NOTE: Resolution values can only be specified for bugs being in one of the end states!
33
SoberIT
Resolution
The resolution field indicates what happened to this bug. Only bugs inResolved state will be marked with one of the resolutions. All bugs which are in one of the Open states have no associated resolution.
Bug Life-Cycle
Unconfirmed
Transition is allowed from any open state to the Resolved state
New
Assigned
Resolved
Verified
Reassign
SoberIT
Resolution
FIXED - A fix for this bug is checked into the tree and tested. INVALID - The problem described is not a bug. WONTFIX - The problem described is a bug which will never be fixed.
LATER - The problem described is a bug which will not be fixed in this version of the product.
REMIND - The problem described is a bug which will probably not be fixed in this version of the product, but might still be. DUPLICATE - The problem is a duplicate of an existing bug. Marking a bug duplicate requires the bug number of the duplicate and that number will be placed in the bug description. WORKSFORME - All attempts at reproducing this bug were futile, reading the code produces no clues as to why this behavior would occur. If more information appears later, please re-assign the bug, for now, file it.
35
SoberIT
36
SoberIT
Specify Product
37
SoberIT
Search Options
38
SoberIT
On the list boxes, such as Status, you can CtrlClick to unselect an option.
My bugs link
39
SoberIT
Allowed
Everything, including creating your own products, users etc. None, each group has its own bugzilla instance
Not allowed
40