Bug Reporting Etiquette
Jamie Zawinski writes "Mozilla.org has a new article on Bugzilla Etiquette. Relevant to more than just Bugzilla, this should be required reading for anyone who wants to file a bug about any product, no matter what bug tracking system is in use. I especially like the mention that "'Open Source' is not the same as 'the developers must do my bidding.'"" Update: 03/19 21:26 GMT by T : If that link doesn't work for you without cutting and pasting, reader Stephen Ostermiller suggests "you might want to use this link which appears to be the same document mirrored elsewhere."
links straight from slashdot.org are disabled, but not from developer.slashdot.org
Bugzilla Etiquette
There's a number of faux pas you can commit when using Bugzilla. At the very least, these will make Mozilla contributors upset at you; if committed enough times they will cause those contributors to demand the disabling of your Bugzilla account. So, ignore this advice at your peril.
That said, Mozilla developers are generally a friendly bunch, and will be towards you as long as you follow these guidelines.
1. Commenting
This is the most important section.
1. No pointless comments. Unless you have something constructive and helpful to say, do not add a comment to a bug. In bugs where there is a heated debate going on, you should be even more inclined not to add a comment. Unless you have something new to contribute, then the bug owner is aware of all the issues, and will make a judgement as to what to do. If you agree the bug should be fixed, vote for it. Additional "I see this too" or "It works for me" comments are unnecessary unless they are on a different platform or a significantly different build.
2. No obligation. "Open Source" is not the same as "the developers must do my bidding." The only person who has any obligation to fix the bugs you want fixed is you. Never act as if you expect someone to fix a bug by a particular date or release. This is merely obnoxious, and is likely to get the bug ignored.
3. No personal abuse. Bugzilla is a window into the world of Mozilla development. The fact that we permit anyone with an account to add a comment does not mean you may harass, harangue or otherwise hassle contributors. Do not make weak threats like "I won't use Mozilla until this bug is fixed!" If a respected project contributor complains about your Bugzilla attitude, then you may have your account disabled. If you don't like this possibility, become a respected project contributor.
2. Changing Fields
1. No messing with other people's bugs. Unless you are the bug assignee, or have some say over the use of their time, never change the Priority or Target Milestone fields. If in doubt, do not change the fields of bugs you do not own - add a comment instead, suggesting the change.
2. No whining about decisions. If a respected project contributor has marked a bug as INVALID, then it is invalid. Someone filing another duplicate of it does not change this. Unless you have further important evidence, do not post a comment arguing that an INVALID or WONTFIX bug should be reopened.
3. Applicability
1. Some of these rules may not apply to you. If they do not, you will know exactly which ones do not, and why they do not apply. If you are not sure, then they definitely all apply to you.
If you see someone not following these rules, the first step is to point this out by private mail. They may well not be aware of this document. Flaming people publically in bugs just causes resentment. In the case of persistent offending you should report the matter to Gerv.
This entire document can be summed up in one sentence: do unto others as you would have them do unto you.
How many times do the people at Mozilla.org have to tell you to NOT link to Bugzilla so the poor servers can actually be usable by companies who are spending real money on employees to work on Mozilla?
Google cache
This story is mirrored on mozilla.org.uk.
Drag the link to the address bar.
I work for a small company (5 employees), with a user base floating around 1M. And I can't even begin to explain the lost man hours dealing with bad bug reports. I have personally closed over 20 duplicate bugs for a single incident, seeing 3 of the 5 most recently submitted bugs were the same was the first bad sign.
/when/ you find the same thing allready there, post a comment with your input, and stats on your OS and machine.
We also deal with the common problem of perception; users think they are doing us the ultimate favour by posting bugs. And as such, feel that any and all means of telling us about them is apropriate, email to 5+ accounts, multiple forum posts, bugtracker, etc. This just wastes time that could have been spent fixing the bug in the first place.
While I would agree that bug reports are helpfull, and nesesary. Condecending tones, foul language, and thinly veiled threats do little.
All i would ask of posters is:
-Replicate it, If you cant make it happen more than once, it doesnt matter (s/w under windows has special quirks of which i am sure you are aware).
-Search It, then
-Include relevant details, killing bug reports under 100chars is really tempting 'it doesnt work', 'the installer breaks', 'its too slow' are all to common.
-Include information on what you were trying to do, and what you were expecting, 'Bugs' are often just a difference of perception between coders, and end users as to what a feature should do.
paul reinheimer
This is not for people _submitting_ a bug. This is for people commenting on an already-submitted bug.
From Painless Bug Tracking:
"""
It's pretty easy to remember the rule for a good bug report. Every good bug report needs exactly three things.
1. Steps to reproduce,
2. What you expected to see, and
3. What you saw instead.
Seems easy, right? Maybe not. As a programmer, people regularly assign me bugs where they left out one piece or another.
"""
Stop worrying about the risks of nuclear power and start worrying about the risks of not using nuclear power.
An interesting example illustrating many of these bad practices over and over and over can be found in the comment section of bug 22274, a not-quite-valid-but-frequently-reported-"bug" involving tabled images, alignment, descenders, and Quirks mode.
The first time I noticed that functionality in Moz I found my way to the above page and spent a good hour or two reading through all the comments. Aside from gaining an education in some of the nitty gritties of html and css standards, I was struck by how frequently the bug was re-reported and by how abusive the commenters became (especially when their bug was labeled "invalid"). It's nice to see a page with explicit etiquette standards. Lets hope the bugzillians abide by them.
The angel in the oatmeal.
CLEARLY report the problem like you are explaining it to a 3 year old.
This is a good rule of thumb, but you can get over-simplified. I have seen people raise bugs that contained wayyyyy too much information. Remember, the developers can't read your mind, but they aren't idiots either.
One good thing to separate out is the PROBLEM and the STEPS TO REPRODUCE. They are not the same thing. If you can reproduce it, and document the steps, all the better. If you can tell a developer WHY a bug is a bug, and how to reproduce it, it makes their jobs much easier. Sometimes it isn't obvious to everyone else WHY you think something should be changed. Some people like to suggest solutions in their bugs, and this isn't a good idea most of the time. I have found that developers tend to see that as "don't tell me how to do my thing". The only way I would suggest doing it is if your proposed solution isn't the obvious one. You could always preface it with "One possible solution could be..." instead of "You should fix it by..."
Report your entire platform. OS, vers, ram, vid card, prod vers, etc.
I would say this is a case-by-case basis, but generally a good tip. You could flood them with too many details. If you don't know something about your system, or if it is irrelevant to the problem, make sure to point that out too. "I don't remember what other applications I had running, but there were several" is better than not mentioning at all that you had other apps running. It could give them a lead.
My beliefs do not require that you agree with them.
Actually, it is.
Reading bug reports that are full of information on what exactly the bug is, where it is reproduced, how to reproduce it, why its doing it, when its doing it, etc.. is going to give the developer a usefull report with information that he needs to fix the bug..
If you add extra information that is not needed, inflamatory or not, that is extra work the developer has to do to fix the bug. It is equivilent to sorting through your spam mail every day. You pick out the bugs you see have usefull information, and proiritize them above the rest. Since bug reports continuously flow into the database, there is usually no time for a bug report that gives no worthwhile information because all the developers time is spent fixing bugs that have REAL bug reports.
It is signal to noise ratio, and if you can't understand that, your a fucking idiot.
Two infinite things: your stupidity and mine. But I'm not sure about the latter. If my sig offends you, I'm sorry.
"Works 4 ME!!" is not a problem resolution.
It is; it often denotes that the bug has been fixed between the time it was reported and the time the QA person got to look at it.
Through the last several software houses I've worked out, I've seen rampant miscategorization and misclassification of bugs by lazy developers.
But developers on an open source project have no incentive to misclassify bugs in this way, because they have no obligation to fix them. So, simply ignoring a bug is a reasonable thing to do.
So, if a bug gets marked INVALID, it almost always is.
Gerv
One of the best tester's I'd ever worked with was thoroughly insane. His biggest joy in life was to think up things no normal person would expect software to do. (Dan, a big jovial Floridian with a beard. Nice guy, just completely out of control once he starts having fun!)
As an example, he simulated a "sporadic network failure" between the primary and hot-backup systems by unplugging and re-plugging the cabling every few seconds for five minutes straight. (The sad thing is that a real sporadic network failure can do this for hours or days before it's identified and fixed, especially if it's just one of dozens of connectors that is loose.)
Another one of his favourites is to always close windows with something like xkill to see how the code responded.
His worst brutality was entering invalid data into every field of a GUI, including copy-paste of control codes, trying to paste GIFs into text edit areas, pasting entire screens of text into 10 character fields, etc.
The sad thing is, I have never seen him take more than 20 minutes to crash an application when he puts his mind to proving that "all software is crap."
I do not fail; I succeed at finding out what does not work.