Commit 3a71faee authored by jake%bugzilla.org's avatar jake%bugzilla.org

Bug 206558 - What happened when multiple items were selected on a multi-select box wasn't clear.

Patch by Vlad Dascalu <jocuri@softhome.net> r=jake
parent 22e6912b
<!-- <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.1//EN"> --> <!-- <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.1//EN"> -->
<!-- TOC <chapter id="using">
Chapter: Using Bugzilla <title>Using Bugzilla</title>
Create an account
Logging in
Setting up preferences
Account Settings
Email Settings
Page Footer
Permissions
Life cycle of a bug
Creating a bug
Checking for duplicates
Overview of all bug fields
Setting bug permissions
The Query Interface
Standard Queries
Email Queries
Boolean Queries
Regexp Queries
The Query Results
Changing Columns
Changing sorting order
Mass changes
Miscellaneous usage hints
--> <section id="how">
<title>How do I use Bugzilla?</title>
<chapter id="using"> <para>This section contains information for end-users of Bugzilla.
<title>Using Bugzilla</title> There is a Bugzilla test installation, called
<epigraph> <ulink url="http://landfill.bugzilla.org/">Landfill</ulink>,
<para> which you are welcome to play with (if it's up.)
What, Why, How, &amp; Where? However, it does not necessarily
</para> have all Bugzilla features enabled, and often runs cutting-edge versions
</epigraph> of Bugzilla for testing, so some things may work slightly differently
than mentioned here.</para>
<section id="whatis"> <section id="myaccount">
<title>What is Bugzilla?</title> <title>Create a Bugzilla Account</title>
<para>
Bugzilla is one example of a class of programs called "Defect <para>If you want to use Bugzilla, first you need to create an account.
Tracking Systems", or, more commonly, "Bug-Tracking Systems". Defect Consult with the administrator responsible for your installation of
Tracking Systems allow individual or groups of developers to keep Bugzilla for the URL you should use to access it. If you're
track of outstanding bugs in their product effectively. Bugzilla was test-driving Bugzilla, use this URL:
originally written by Terry Weissman in a programming language called <ulink url="http://landfill.bugzilla.org/bugzilla-tip/"/>.
"TCL", to replace a crappy bug-tracking database used internally for
Netscape Communications. Terry later ported Bugzilla to Perl from
TCL, and in Perl it remains to this day. Most commercial
defect-tracking software vendors at the time charged enormous
licensing fees, and Bugzilla quickly became a favorite of the
open-source crowd (with its genesis in the open-source browser
project, Mozilla). It is now the de-facto standard defect-tracking
system against which all others are measured.
</para> </para>
<para>
Bugzilla has matured immensely, and now boasts many advanced features. These include: <orderedlist>
<itemizedlist>
<listitem> <listitem>
<para> <para>Click the
integrated, product-based granular security schema <quote>Open a new Bugzilla account</quote>
</para>
link, enter your email address and, optionally, your name in the
spaces provided, then click
<quote>Create Account</quote>
.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Within moments, you should receive an email to the address
inter-bug dependencies and dependency graphing you provided above, which contains your login name (generally the
</para> same as the email address), and a password you can use to access
your account. This password is randomly generated, and can be
changed to something more memorable.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Click the
advanced reporting capabilities <quote>Log In</quote>
link in the yellow area at the bottom of the page in your browser,
enter your email address and password into the spaces provided, and
click
<quote>Login</quote>.
</para> </para>
</listitem> </listitem>
</orderedlist>
<para>You are now logged in. Bugzilla uses cookies for authentication
so, unless your IP address changes, you should not have to log in
again.</para>
</section>
<section id="bug_page">
<title>Anatomy of a Bug</title>
<para>The core of Bugzilla is the screen which displays a particular
bug. It's a good place to explain some Bugzilla concepts.
<ulink
url="http://landfill.bugzilla.org/bugzilla-tip/show_bug.cgi?id=1">
Bug 1 on Landfill</ulink>
is a good example. Note that the labels for most fields are hyperlinks;
clicking them will take you to context-sensitive help on that
particular field. Fields marked * may not be present on every
installation of Bugzilla.</para>
<orderedlist>
<listitem> <listitem>
<para> <para>
a robust, stable RDBMS back-end <emphasis>Product and Component</emphasis>:
Bugs are divided up by Product and Component, with a Product
having one or more Components in it. For example,
bugzilla.mozilla.org's "Bugzilla" Product is composed of several
Components:
<simplelist>
<member>
<emphasis>Administration:</emphasis>
Administration of a Bugzilla installation.</member>
<member>
<emphasis>Bugzilla-General:</emphasis>
Anything that doesn't fit in the other components, or spans
multiple components.</member>
<member>
<emphasis>Creating/Changing Bugs:</emphasis>
Creating, changing, and viewing bugs.</member>
<member>
<emphasis>Documentation:</emphasis>
The Bugzilla documentation, including The Bugzilla Guide.</member>
<member>
<emphasis>Email:</emphasis>
Anything to do with email sent by Bugzilla.</member>
<member>
<emphasis>Installation:</emphasis>
The installation process of Bugzilla.</member>
<member>
<emphasis>Query/Buglist:</emphasis>
Anything to do with searching for bugs and viewing the
buglists.</member>
<member>
<emphasis>Reporting/Charting:</emphasis>
Getting reports from Bugzilla.</member>
<member>
<emphasis>User Accounts:</emphasis>
Anything about managing a user account from the user's perspective.
Saved queries, creating accounts, changing passwords, logging in,
etc.</member>
<member>
<emphasis>User Interface:</emphasis>
General issues having to do with the user interface cosmetics (not
functionality) including cosmetic issues, HTML templates,
etc.</member>
</simplelist>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
extensive configurability <emphasis>Status and Resolution:</emphasis>
</para>
These define exactly what state the bug is in - from not even
being confirmed as a bug, through to being fixed and the fix
confirmed by Quality Assurance. The different possible values for
Status and Resolution on your installation should be documented in the
context-sensitive help for those items.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
a very well-understood and well-thought-out natural bug resolution protocol <emphasis>Assigned To:</emphasis>
</para> The person responsible for fixing the bug.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
email, XML, console, and HTTP APIs <emphasis>*URL:</emphasis>
</para> A URL associated with the bug, if any.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
available integration with automated software <emphasis>Summary:</emphasis>
configuration management systems, including Perforce and A one-sentence summary of the problem.</para>
CVS (through the Bugzilla email interface and
checkin/checkout scripts)
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
too many more features to list <emphasis>*Status Whiteboard:</emphasis>
</para> (a.k.a. Whiteboard) A free-form text area for adding short notes
and tags to a bug.</para>
</listitem> </listitem>
</itemizedlist>
</para>
<para>
Despite its current robustness and popularity, Bugzilla faces
some near-term challenges, such as reliance on a single
database, a lack of abstraction of the user interface and
program logic, verbose email bug notifications, a powerful but
daunting query interface, little reporting configurability,
problems with extremely large queries, some unsupportable bug
resolution options, little internationalization (although non-US
character sets are accepted for comments), and dependence on
some nonstandard libraries.
</para>
<para>
Some recent headway has been made on the query front, however.
If you are using the latest version of Bugzilla, you should see
a <quote>simple search</quote> form on the default front page of
your Bugzilla install. Type in two or three search terms and
you should pull up some relevant information. This is also
available as "queryhelp.cgi".
</para>
<para>
Despite these small problems, Bugzilla is very hard to beat. It
is under <emphasis>very</emphasis> active development to address
the current issues, and continually gains new features.
</para>
</section>
<section id="why">
<title>Why Should We Use Bugzilla?</title>
<epigraph>
<para>
No, Who's on first...
</para>
</epigraph>
<para>
For many years, defect-tracking software has remained
principally the domain of large software development houses.
Even then, most shops never bothered with bug-tracking software,
and instead simply relied on shared lists and email to monitor
the status of defects. This procedure is error-prone and tends
to cause those bugs judged least significant by developers to be
dropped or ignored.
</para>
<para>
These days, many companies are finding that integrated
defect-tracking systems reduce downtime, increase productivity,
and raise customer satisfaction with their systems. Along with
full disclosure, an open bug-tracker allows manufacturers to
keep in touch with their clients and resellers, to communicate
about problems effectively throughout the data management chain.
Many corporations have also discovered that defect-tracking
helps reduce costs by providing IT support accountability,
telephone support knowledge bases, and a common, well-understood
system for accounting for unusual system or software issues.
</para>
<para>
But why should <emphasis>you</emphasis> use Bugzilla?
</para>
<para>
Bugzilla is very adaptable to various situations. Known uses
currently include IT support queues, Systems Administration
deployment management, chip design and development problem
tracking (both pre-and-post fabrication), and software and
hardware bug tracking for luminaries such as Redhat, Loki
software, Linux-Mandrake, and VA Systems. Combined with systems
such as CVS, Bonsai, or Perforce SCM, Bugzilla provides a
powerful, easy-to-use solution to configuration management and
replication problems
</para>
<para>
Bugzilla can dramatically increase the productivity and
accountability of individual employees by providing a documented
workflow and positive feedback for good performance. How many
times do you wake up in the morning, remembering that you were
supposed to do <emphasis>something</emphasis> today, but you
just can't quite remember? Put it in Bugzilla, and you have a
record of it from which you can extrapolate milestones, predict
product versions for integration, and by using Bugzilla's e-mail
integration features be able to follow the discussion trail that
led to critical decisions.
</para>
<para>
Ultimately, Bugzilla puts the power in your hands to improve
your value to your employer or business while providing a usable
framework for your natural attention to detail and knowledge
store to flourish.
</para>
</section>
<section id="how"> <listitem>
<title>How do I use Bugzilla?</title>
<epigraph>
<para>
Hey! I'm Woody! Howdy, Howdy, Howdy!
</para>
</epigraph>
<para>
Bugzilla is a large, complex system. Describing how to use it
requires some time. If you are only interested in installing or
administering a Bugzilla installation, please consult the
Installing and Administering Bugzilla portions of this Guide.
This section is principally aimed towards developing end-user
mastery of Bugzilla, so you may fully enjoy the benefits
afforded by using this reliable open-source bug-tracking
software.
</para>
<para>
Throughout this portion of the Guide, we will refer to user
account options available at the Bugzilla test installation,
<ulink url="http://landfill.tequilarista.org/">
landfill.tequilarista.org</ulink>.
<note>
<para> <para>
Some people have run into difficulties completing this <emphasis>*Keywords:</emphasis>
tutorial. If you run into problems, please check the The administrator can define keywords which you can use to tag and
updated online documentation available at <ulink categorise bugs - e.g. The Mozilla Project has keywords like crash
url="http://www.trilobyte.net/barnsons/">http://www.trilobyte.net/barnsons</ulink>. If you're still stumped, please subscribe to the newsgroup and provide details of exactly what's stumping you! If enough people complain, I'll have to fix it in the next version of this Guide. You can subscribe to the newsgroup at <ulink url="news://news.mozilla.org/netscape.public.mozilla.webtools"> news://news.mozilla.org/netscape.public.mozilla.webtools</ulink> and regression.</para>
</para> </listitem>
</note> Although Landfill serves as a great introduction to
Bugzilla, it does not offer all the options you would have as a
user on your own installation of Bugzilla, nor can it do more
than serve as a general introduction to Bugzilla. Additionally,
Landfill often runs cutting-edge versions of Bugzilla for
testing, so some things may work slightly differently than
mentioned here.
</para>
<section id="myaccount">
<title>Create a Bugzilla Account</title>
<para>
First things first! If you want to use Bugzilla, first you
need to create an account. Consult with the administrator
responsible for your installation of Bugzilla for the URL you
should use to access it. If you're test-driving the end-user
Bugzilla experience, use this URL: <ulink
url="http://landfill.tequilarista.org/bugzilla-tip/"> http://landfill.tequilarista.org/bugzilla-tip/</ulink>
</para>
<orderedlist>
<listitem> <listitem>
<para> <para>
Click the "Open a new Bugzilla account" link. <emphasis>Platform and OS:</emphasis>
</para> These indicate the computing environment where the bug was
found.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Enter your "E-mail address" and "Real Name" (or whatever <emphasis>Version:</emphasis>
name you want to call yourself) in the spaces provided, The "Version" field is usually used for versions of a product which
then select the "Create Account" button. have been released, and is set to indicate which versions of a
</para> Component have the particular problem the bug report is
about.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Within moments, you should receive an email to the address <emphasis>Priority:</emphasis>
you provided above, which contains your login name The bug assignee uses this field to prioritise his or her bugs.
(generally the same as the email address), and a password It's a good idea not to change this on other people's bugs.</para>
you can use to access your account. This password is
randomly generated, and should be changed at your nearest
opportunity (we'll go into how to do it later).
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Click the <quote>Log In</quote> link in the yellow area at <emphasis>Severity:</emphasis>
the bottom of the page in your browser, then enter your This indicates how severe the problem is - from blocker
<quote>E-mail address</quote> and <quote>Password</quote> ("application unusable") to trivial ("minor cosmetic issue"). You
you just received into the spaces provided, and select can also use this field to indicate whether a bug is an enhancement
<quote>Login</quote>. request.</para>
<note>
<para>
If you ever forget your password, you can come back to
this page, enter your <quote>E-mail address</quote>,
then select the <quote>E-mail me a password</quote>
button to have your password mailed to you again so
that you can login.
</para>
</note>
<caution>
<para>
Many modern browsers include an
<quote>Auto-Complete</quote> or <quote>Form
Fill</quote> feature to remember the user names and
passwords you type in at many sites. Unfortunately,
sometimes they attempt to guess what you will put in
as your password, and guess wrong. If you notice a
text box is already filled out, please overwrite the
contents of the text box so you can be sure to input
the correct information.
</para>
</caution>
</para>
</listitem> </listitem>
</orderedlist>
<para>
Congratulations! If you followed these directions, you now
are the proud owner of a user account on
landfill.tequilarista.org (Landfill) or your local Bugzilla
install. You should now see in your browser a page called the
<quote>Bugzilla Query Page</quote>. It may look daunting, but with this
Guide to walk you through it, you will master it in no time.
</para>
</section>
<section id="query">
<title>The Bugzilla Query Page</title>
<para>
The Bugzilla Query Page is the heart and soul of the Bugzilla
user experience. It is the master interface where you can
find any bug report, comment, or patch currently in the
Bugzilla system. We'll go into how to create your own bug
report later on.
</para>
<para>
There are efforts underway to simplify query usage. If you
have a local installation of Bugzilla 2.12 or higher, you
should have <filename>quicksearch.html</filename> available to
use and simplify your searches. There is also a helper for
the query interface, called
<filename>queryhelp.cgi</filename>. Landfill tends to run the
latest code, so these two utilities should be available there
for your perusal.
</para>
<para>
At this point, let's visit the query page.
<ulink url="http://landfill.tequilarista.org/bugzilla-tip/query.cgi">
landfill.tequilarista.org/bugzilla-tip/query.cgi</ulink>
</para>
<para>
The first thing you need to notice about the Bugzilla Query
Page is that nearly every box you see on your screen has a
hyperlink nearby, explaining what it is or what it does. Near
the upper-left-hand corner of your browser window you should
see the word <quote>Status</quote> underlined. Select it.
</para>
<para>
Notice the page that popped up? Every underlined word you see
on your screen is a hyperlink that will take you to
context-sensitive help. Click around for a while, and learn
what everything here does. To return to the query interface
after pulling up a help page, use the <quote>Back</quote>
button in your browser.
</para>
<para>
I'm sure that after checking out the online help, you are now
an expert on the Bugzilla Query Page. If, however, you feel
you haven't mastered it yet, let me walk you through making a
few successful queries to find out what there are in the
Bugzilla bug-tracking system itself.
</para>
<orderedlist>
<listitem> <listitem>
<para> <para>
Ensure you are back on the <quote>Bugzilla Query <emphasis>*Target:</emphasis>
Page</quote>. Do nothing in the boxes marked "Status", (a.k.a. Target Milestone) A future version by which the bug is to
"Resolution", "Platform", "OpSys", "Priority", or be fixed. e.g. The Bugzilla Project's milestones for future
"Severity". The default query for "Status" is to find all Bugzilla versions are 2.18, 2.20, 3.0, etc. Milestones are not
bugs that are NEW, ASSIGNED, or REOPENED, which is what we restricted to numbers, thought - you can use any text strings, such
want. If you don't select anything in the other 5 as dates.</para>
scrollboxes there, then you are saying that "any of these
are OK"; we're not locking ourselves into only finding
bugs on the "DEC" Platform, or "Windows 95" OpSys
(Operating System). You're smart, I think you have it
figured out.
</para>
<para>
Basically, selecting <emphasis>anything</emphasis> on the
query page narrows your search down. Leaving stuff
unselected, or text boxes unfilled, broadens your search.
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
You see the box immediately below the top six boxes that <emphasis>Reporter:</emphasis>
contains an "Email" text box, with the words "matching The person who filed the bug.</para>
as", a drop-down selection box, then some checkboxes with
"Assigned To" checked by default? This allows you to
filter your search down based upon email address. Let's
put my email address in there, and see what happens.
</para>
<para>
Type "barnboy@trilobyte.net" in the top Email text box.
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Let's narrow the search some more. Scroll down until you <emphasis>CC list:</emphasis>
find the box with the word "Program" over the top of it. A list of people who get mail when the bug changes.</para>
This is where we can narrow our search down to only
specific products (software programs or product lines) in
our Bugzilla database. Please notice the box is a
<emphasis>scrollbox</emphasis>. Using the down arrow on
the scrollbox, scroll down until you can see an entry
called "Bugzilla". Select this entry.
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Did you notice that some of the boxes to the right changed <emphasis>Attachments:</emphasis>
when you selected "Bugzilla"? Every Program (or Product) You can attach files (e.g. testcases or patches) to bugs. If there
has different Versions, Components, and Target Milestones are any attachments, they are listed in this section.</para>
associated with it. A "Version" is the number of a
software program.
<example>
<title>Some Famous Software Versions</title>
<informalexample>
<para>
Do you remember the hype in 1995 when Microsoft
Windows 95(r) was released? It may have been several
years ago, but Microsoft(tm) spent over $300 Million
advertising this new Version of their software.
Three years later, they released Microsoft Windows
98(r), another new version, to great fanfare, and
then in 2000 quietly released Microsoft Windows
ME(Millenium Edition)(r).
</para>
<para>
Software "Versions" help a manufacturer
differentiate their current product from their
previous products. Most do not identify their
products by the year they were released. Instead,
the "original" version of their software will often
be numbered "1.0", with small bug-fix releases on
subsequent tenths of a digit. In most cases, it's
not a decimal number; for instance, often 1.9 is an
<emphasis>older</emphasis> version of the software
than 1.11, but is a <emphasis>newer</emphasis>
version than 1.1.1.
</para>
<para>
In general, a "Version" in Bugzilla should refer to
<emphasis>released</emphasis> products, not products
that have not yet been released to the public.
Forthcoming products are what the Target Milestone
field is for.
</para>
</informalexample>
</example>
</para>
<para>
A "Component" is a piece of a Product.
It may be a standalone program, or some other logical
division of a Product or Program.
Normally, a Component has a single Owner, who is responsible
for overseeing efforts to improve that Component.
<example>
<title>Mozilla's Bugzilla Components</title>
<informalexample>
<para>
Mozilla's "Bugzilla" Product is composed of several pieces (Components):
<simplelist>
<member><emphasis>Administration</emphasis>,
Administration of a bugzilla installation, including
<filename>editcomponents.cgi</filename>,
<filename>editgroups.cgi</filename>,
<filename>editkeywords.cgi</filename>,
<filename>editparams.cgi</filename>,
<filename>editproducts.cgi</filename>,
<filename>editusers.cgi</filename>,
<filename>editversions.cgi,</filename> and
<filename>sanitycheck.cgi</filename>.
</member>
<member><emphasis>Bugzilla-General</emphasis>,
Anything that doesn't fit in the other components, or spans
multiple components.
</member>
<member><emphasis>Creating/Changing Bugs</emphasis>,
Creating, changing, and viewing bugs.
<filename>enter_bug.cgi</filename>,
<filename>post_bug.cgi</filename>,
<filename>show_bug.cgi</filename> and
<filename>process_bug.cgi</filename>.
</member>
<member><emphasis>Documentation</emphasis>,
The bugzilla documentation, including anything in the
<filename>docs/</filename> directory and The Bugzilla Guide
(This document :)
</member>
<member><emphasis>Email</emphasis>,
Anything to do with email sent by Bugzilla.
<filename>processmail</filename>
</member>
<member><emphasis>Installation</emphasis>,
The installation process of Bugzilla. This includes
<filename>checksetup.pl</filename> and whatever else it evolves into.
</member>
<member><emphasis>Query/Buglist</emphasis>,
Anything to do with searching for bugs and viewing the buglists.
<filename>query.cgi</filename> and
<filename>buglist.cgi</filename>
</member>
<member><emphasis>Reporting/Charting</emphasis>,
Getting reports from Bugzilla.
<filename>reports.cgi</filename> and
<filename>duplicates.cgi</filename>
</member>
<member><emphasis>User Accounts</emphasis>,
Anything about managing a user account from the user's perspective.
<filename>userprefs.cgi</filename>, saved queries, creating accounts,
changing passwords, logging in, etc.
</member>
<member><emphasis>User Interface</emphasis>,
General issues having to do with the user interface cosmetics (not
functionality) including cosmetic issues, HTML templates, etc.
</member>
</simplelist>
</para>
</informalexample>
</example>
</para>
<para>
A "Milestone", or "Target Milestone" is a often a planned
future "Version" of a product. In many cases, though,
Milestones simply represent significant dates for a
developer. Having certain features in your Product is
frequently tied to revenue (money) the developer will
receive if the features work by the time she reaches the
Target Milestone. Target Milestones are a great tool to
organize your time. If someone will pay you $100,000 for
incorporating certain features by a certain date, those
features by that Milestone date become a very high
priority. Milestones tend to be highly malleable
creatures, though, that appear to be in reach but are out
of reach by the time the important day arrives.
</para>
<para>
The Bugzilla Project has set up Milestones for future
Bugzilla versions 2.14, 2.16, 2.18, 3.0, etc. However, a
Target Milestone can just as easily be a specific date,
code name, or weird alphanumeric combination, like "M19".
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
OK, now let's select the "Bugzilla" component from its scrollbox. <emphasis>*Dependencies:</emphasis>
</para> If this bug cannot be fixed unless other bugs are fixed (depends
on), or this bug stops other bugs being fixed (blocks), their
numbers are recorded here.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Skip down the page a bit -- do you see the "submit query" button? <emphasis>*Votes:</emphasis>
Select it, and let's run Whether this bug has any votes.</para>
this query!
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Congratulations! You've completed your first Query, and <emphasis>Additional Comments:</emphasis>
have before you the Bug List of the author of this Guide, You can add your two cents to the bug discussion here, if you have
Matthew P. Barnson (barnboy@trilobyte.net). If I'm doing something worthwhile to say.</para>
well, you'll have a cryptic "Zarro Boogs Found" message on
your screen. It is just a happy hacker's way of saying
"Zero Bugs Found". However, I am fairly certain I will
always have some bugs assigned to me that aren't done yet,
so you won't often see that message!
</para>
</listitem> </listitem>
</orderedlist> </orderedlist>
<para> </section>
I encourage you to click the bug numbers in the left-hand
column and examine my bugs. Also notice that if you click the <section id="query">
underlined links near the top of this page, they do not take <title>Searching for Bugs</title>
you to context-sensitive help here, but instead sort the
columns of bugs on the screen! When you need to sort your bugs <para>The Bugzilla Search page is is the interface where you can find
by priority, severity, or the people they are assigned to, any bug report, comment, or patch currently in the Bugzilla system. You
this is a tremendous timesaver. can play with it here:
</para> <ulink url="http://landfill.bugzilla.org/bugzilla-tip/query.cgi"/>.</para>
<para>
A couple more interesting things about the Bug List page: <para>The Search page has controls for selecting different possible
values for all of the fields in a bug, as described above. For some
fields, multiple values can be selected. In those cases, Bugzilla
returns bugs where the content of the field matches one of the selected
values. If none is selected, then the field can take any value.</para>
<para>Once you've defined a search, you can either run it, or save it
as a Remembered Query, which can optionally appear in the footer of
your pages.</para>
<para>Highly advanced querying is done using Boolean Charts.</para>
</section>
<section id="list">
<title>Bug Lists</title>
<para>If you run a search, a list of matching bugs will be returned.
The default search is to return all open bugs on the system - don't try
running this search on a Bugzilla installation with a lot of
bugs!</para>
<para>The format of the list is configurable. For example, it can be
sorted by clicking the column headings. Other useful features can be
accessed using the links at the bottom of the list:
<simplelist> <simplelist>
<member><emphasis>Change Columns</emphasis>: by selecting <member>
this link, you can show all kinds of information in the <emphasis>Long Format:</emphasis>
Bug List</member>
<member><emphasis>Change several bugs at once</emphasis>: If this gives you a large page with a non-editable summary of the fields
you have sufficient rights to change all the bugs shown in of each bug.</member>
the Bug List, you can mass-modify them. This is a big
time-saver.</member> <member>
<member><emphasis>Send mail to bug owners</emphasis>: If you <emphasis>Change Columns:</emphasis>
have many related bugs, you can request an update from
every person who owns the bugs in the Bug List asking them change the bug attributes which appear in the list.</member>
the status.</member>
<member><emphasis>Edit this query</emphasis>: If you didn't <member>
get exactly the results you were looking for, you can <emphasis>Change several bugs at once:</emphasis>
return to the Query page through this link and make small
revisions to the query you just made so you get more If your account is sufficiently empowered, you can make the same
accurate results.</member> change to all the bugs in the list - for example, changing their
owner.</member>
<member>
<emphasis>Send mail to bug owners:</emphasis>
Sends mail to the owners of all bugs on the list.</member>
<member>
<emphasis>Edit this query:</emphasis>
If you didn't get exactly the results you were looking for, you can
return to the Query page through this link and make small revisions
to the query you just made so you get more accurate results.</member>
</simplelist> </simplelist>
</para> </para>
<note>
<para>
There are many more options to the Bugzilla Query Page and
the Bug List than I have shown you. But this should be
enough for you to learn to get around. I encourage you to
check out the <ulink
url="http://www.mozilla.org/bugs/">Bugzilla Home Page</ulink> to learn about the Anatomy and Life Cycle of a Bug before continuing.
</para>
</note>
</section> </section>
<section id="bugreports"> <section id="bugreports">
<title>Creating and Managing Bug Reports</title> <title>Filing Bugs</title>
<epigraph>
<para>And all this time, I thought we were taking bugs <emphasis>out</emphasis>...</para> <para>Years of bug writing experience has been distilled for your
</epigraph> reading pleasure into the
<ulink
url="http://landfill.bugzilla.org/bugzilla-tip/bugwritinghelp.html">
Bug Writing Guidelines</ulink>.
While some of the advice is Mozilla-specific, the basic principles of
reporting Reproducible, Specific bugs, isolating the Product you are
using, the Version of the Product, the Component which failed, the
Hardware Platform, and Operating System you were using at the time of
the failure go a long way toward ensuring accurate, responsible fixes
for the bug that bit you.</para>
<para>The procedure for filing a test bug is as follows:</para>
<section id="bug-writing">
<title>Writing a Great Bug Report</title>
<para>
Before we plunge into writing your first bug report, I
encourage you to read some bug-writing guidelines. If you
are reading this document as part of a Bugzilla CVS checkout
or un-tarred Bugzilla distribution, you should be able to
read them by clicking <ulink
url="../../bugwritinghelp.html">here</ulink>. If you are reading this online, check out the Mozilla.org bug-writing guidelines at <ulink url="http://www.mozilla.org/quality/bug-writing-guidelines.html">http://www.mozilla.org/quality/bug-writing-guidelines.html</ulink>. While some of the advice is Mozilla-specific, the basic principles of reporting Reproducible, Specific bugs, isolating the Product you are using, the Version of the Product, the Component which failed, the Hardware Platform, and Operating System you were using at the time of the failure go a long way toward ensuring accurate, responsible fixes for the bug that bit you.
</para>
<para>
While you are at it, why not learn how to find previously
reported bugs? Mozilla.org has published a great tutorial
on finding duplicate bugs, available at <ulink
url="http://www.mozilla.org/quality/help/beginning-duplicate-finding.html"> http://www.mozilla.org/quality/help/beginning-duplicate-finding.html</ulink>.
</para>
<para>
I realize this was a lot to read. However, understanding
the mentality of writing great bug reports will help us on
the next part!
</para>
<orderedlist> <orderedlist>
<listitem> <listitem>
<para> <para>Go to
Go back to <ulink <ulink url="http://landfill.bugzilla.org/bugzilla-tip/">
url="http://landfill.tequilarista.org/bugzilla-tip/"> http://landfill.tequilarista.org/bugzilla-tip/</ulink> in your browser. Landfill</ulink>
</para> in your browser and click
</listitem> <ulink
<listitem> url="http://landfill.bugzilla.org/bugzilla-tip/enter_bug.cgi">
<para> Enter a new bug report</ulink>.
Select the <ulink
url="http://landfill.tequilarista.org/bugzilla-tip/enter_bug.cgi"> Enter a new bug report</ulink> link.
</para>
</listitem>
<listitem>
<para>
Select a product.
</para>
</listitem>
<listitem>
<para>
Now you should be at the "Enter Bug" form. The
"reporter" should have been automatically filled out for
you (or else Bugzilla prompted you to Log In again --
you did keep the email with your username and password,
didn't you?).
</para>
</listitem>
<listitem>
<para>
Select a Component in the scrollbox.
</para>
</listitem>
<listitem>
<para>
Bugzilla should have made reasonable guesses, based upon
your browser, for the "Platform" and "OS" drop-down
boxes. If those are wrong, change them -- if you're on
an SGI box running IRIX, we want to know!
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Select a product - any one will do.</para>
Fill in the "Assigned To" box with the email address you
provided earlier. This way you don't end up sending
copies of your bug to lots of other people, since it's
just a test bug.
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Fill in the fields. Bugzilla should have made reasonable
Leave the "CC" text box blank. Fill in the "URL" box guesses, based upon your browser, for the "Platform" and "OS"
with "http://www.mozilla.org". drop-down boxes. If they are wrong, change them.</para>
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Select "Commit" and send in your bug report.</para>
Enter "The Bugzilla Guide" in the Summary text box, and
place any comments you have on this tutorial, or the
Guide in general, into the Description box.
</para>
</listitem> </listitem>
</orderedlist> </orderedlist>
<para> </section>
Voila! Select "Commit" and send in your bug report! Next
we'll look at resolving bugs.
</para>
</section> </section>
<section id="bug-manage"> <section id="hintsandtips">
<title>Managing your Bug Reports</title> <title>Hints and Tips</title>
<para>
OK, you should have a link to the bug you just created near <para>This section distills some Bugzilla tips and best practices
the top of your page. It should say "Bug XXXX posted", with that have been developed.</para>
a link to the right saying "Back to BUG# XXXX". Select this
link. <section>
</para> <title>Autolinkification</title>
<orderedlist> <para>Bugzilla comments are plain text - so posting HTML will result
<listitem> in literal HTML tags rather than being interpreted by a browser.
<para> However, Bugzilla will automatically make hyperlinks out of certain
Scroll down a bit on the subsequent page, until you see sorts of text in comments. For example, the text
the "Resolve bug, changing resolution to (dropdown box). http://www.bugzilla.org will be turned into
Normally, you would "Accept bug (change status to <ulink url="http://www.bugzilla.org"/>.
ASSIGNED)", fix it, and then resolve. But in this case, Other strings which get linkified in the obvious manner are:
we're going to short-circuit the process because this <simplelist>
wasn't a real bug. Change the dropdown next to "Resolve <member>bug 12345</member>
Bug" to "INVALID", make sure the radio button is marked <member>bug 23456, comment 53</member>
next to "Resolve Bug", then click "Commit". <member>attachment 4321</member>
<member>mailto:george@example.com</member>
<member>george@example.com</member>
<member>ftp://ftp.mozilla.org</member>
<member>Most other sorts of URL</member>
</simplelist>
</para> </para>
</listitem>
<listitem> <para>A corollary here is that if you type a bug number in a comment,
<para> you should put the word "bug" before it, so it gets autolinkified
Hey! It said it couldn't take the change in a big red for the convenience of others.
box! That's right, you must specify a Comment in order
to make this change. Select the "Back" button in your
browser, add a Comment, then try Resolving the bug with
INVALID status again. This time it should work.
</para> </para>
</listitem> </section>
</orderedlist>
<para> <section id="quicksearch">
You have now learned the basics of Bugzilla navigation, <title>Quicksearch</title>
entering a bug, and bug maintenance. I encourage you to
explore these features, and see what you can do with them! <para>Quicksearch is a single-text-box query tool which uses
We'll spend no more time on individual Bugs or Queries from metacharacters to indicate what is to be searched. For example, typing
this point on, so you are on your own there. "<filename>foo|bar</filename>"
into Quicksearch would search for "foo" or "bar" in the
summary and status whiteboard of a bug; adding
"<filename>:BazProduct</filename>" would
search only in that product.
</para> </para>
<para>
But I'll give a few last hints! <para>You'll find the Quicksearch box on Bugzilla's
front page, along with a
<ulink url="../../quicksearch.html">Help</ulink>
link which details how to use it.</para>
</section>
<section id="commenting">
<title>Comments</title>
<para>If you are changing the fields on a bug, only comment if
either you have something pertinent to say, or Bugzilla requires it.
Otherwise, you may spam people unnecessarily with bug mail.
To take an example: a user can set up their account to filter out messages
where someone just adds themselves to the CC field of a bug
(which happens a lot.) If you come along, add yourself to the CC field,
and add a comment saying "Adding self to CC", then that person
gets a pointless piece of mail they would otherwise have avoided.
</para> </para>
<para> <para>
There is a <ulink Don't use sigs in comments. Signing your name ("Bill") is acceptable,
url="http://landfill.tequilarista.org/bugzilla-tip/help.html">CLUE</ulink> on the Query page that will teach you more how to use the form. particularly if you do it out of habit, but full mail/news-style
four line ASCII art creations are not.
</para> </para>
</section>
<section id="attachments">
<title>Attachments</title>
<para> <para>
If you click the hyperlink on the <ulink Use attachments, rather than comments, for large chunks of ASCII data,
url="http://landfill.tequilarista.org/bugzilla-tip/describecomponents.cgi">Component</ulink> box of the Query page, you will be presented a form that will describe what all the components are. such as trace, debugging output files, or log files. That way, it doesn't
bloat the bug for everyone who wants to read it, and cause people to
receive fat, useless mails.
</para> </para>
<para>
Possibly the most powerful feature of the Query page is the <para>Trim screenshots. There's no need to show the whole screen if
<ulink you are pointing out a single-pixel problem.
url="http://landfill.tequilarista.org/bugzilla-tip/booleanchart.html">Boolean Chart</ulink> section. It's a bit confusing to use the first time, but can provide unparalleled flexibility in your queries, allowing you to build extremely powerful requests.
</para> </para>
<para>
Finally, you can build some nifty <ulink <para>Don't attach simple test cases (e.g. one HTML file, one
url="http://landfill.tequilarista.org/bugzilla-tip/reports.cgi">Reports</ulink> using the "Bug Reports" link near the bottom of the query page, and also available via the "Reports" link at the footer of each page. CSS file and an image) as a ZIP file. Instead, upload them in
reverse order and edit the referring file so that they point to the
attached files. This way, the test case works immediately
out of the bug.
</para> </para>
</section> </section>
</section>
</section> <section>
<title>Filing Bugs</title>
<section id="init4me"> <para>Try to make sure that everything said in the summary is also
<title>Where can I find my user preferences?</title> said in the first comment. Summaries are often updated and this will
<epigraph> ensure your original information is easily accessible.
<para>
Indiana, it feels like we walking on fortune cookies!
</para> </para>
<para> <para>
These ain't fortune cookies, kid... You do not need to put "any" or similar strings in the URL field.
If there is no specific URL associated with the bug, leave this
field blank.
</para> </para>
</epigraph>
<para> <para>If you feel a bug you filed was incorrectly marked as a
Customized User Preferences offer tremendous versatility to your DUPLICATE of another, please question it in your bug, not
individual Bugzilla experience. Let's plunge into what you can the bug it was duped to. Feel free to CC the person who duped it
do! The first step is to click the "Edit prefs" link at the if they are not already CCed.
footer of each page once you have logged in to <ulink
url="http://landfill.tequilarista.org/bugzilla-tip/query.cgi?GoAheadAndLogIn=1"> Landfill</ulink>.
</para> </para>
</section>
</section>
<section id="userpreferences">
<title>User Preferences</title>
<para>Once you have logged in, you can customise various aspects of
Bugzilla via the "Edit prefs" link in the page footer.
The preferences are split into four tabs:</para>
<section id="accountsettings" xreflabel="Account Settings"> <section id="accountsettings" xreflabel="Account Settings">
<title>Account Settings</title> <title>Account Settings</title>
<para>
On this page, you can change your basic Account Settings, <para>On this tab, you can change your basic account information,
including your password and full name. For security reasons, including your password, email address and real name. For security
in order to change anything on this page you must type your reasons, in order to change anything on this page you must type your
<emphasis>current</emphasis> password into the <quote>Old <emphasis>current</emphasis>
Password</quote> field. If you wish to change your password into the
password, type the new password you want into the <quote>New <quote>Password</quote>
Password</quote> field and again into the <quote>Re-enter field at the top of the page.
new password</quote> field to ensure you typed your new If you attempt to change your email address, a confirmation
password correctly. Select the <quote>Submit</quote> button email is sent to both the old and new addresses, with a link to use to
and you are done. confirm the change. This helps to prevent account hijacking.</para>
</para>
</section> </section>
<section id="emailsettings" >
<section id="emailsettings">
<title>Email Settings</title> <title>Email Settings</title>
<section id="notification" xreflabel="">
<title>Email Notification</title> <para>On this tab you can reduce or increase the amount of email sent
<para> you from Bugzilla, opting in our out depending on your relationship to
Here you can reduce or increase the amount of email sent you the bug and the change that was made to it. (Note that you can also do
from Bugzilla. Although this is referred to as client-side filtering using the X-Bugzilla-Reason header which Bugzilla
<quote>Advanced Email Filtering Options</quote>, they are, adds to all bugmail.)</para>
in fact, the standard email filter set. All of them are
self-explanatory, but you can use the filters in interesting <para>By entering user email names, delineated by commas, into the
ways. For instance, some people (notably Quality Assurance "Users to watch" text entry box you can receive a copy of all the
personnel) often only care to receive updates regarding a bugmail of other users (security settings permitting.) This powerful
bug when the bug changes state, so they can track bugs on functionality enables seamless transitions as developers change
their flow charts and know when it is time to pull the bug projects or users go on holiday.</para>
onto a quality assurance platform for inspection. Other
people set up email gateways to
<xref linkend="bonsai" /> or <xref linkend="tinderbox" />, and
restrict which types of Bugzilla information are fed to
these systems..
</para>
</section>
<section id="newemailtech">
<title>New Email Technology</title>
<note>
<para>
This option may not be available in all Bugzilla
installations, depending upon the preferences of the
systems administrator responsible for the setup of your
Bugzilla. However, if you really want this functionality,
ask her to "enable newemailtech in Params" and "make it
the default for all new users", referring her to the
Administration section of this Guide.
</para>
</note>
<para>
Disregard the warnings about "experimental and bleeding
edge"; the code to handle email in a cleaner manner than
that historically used for Bugzilla is quite robust and
well-tested now.
</para>
<para>
I recommend you enable the option, "Click here to sign up
(and risk any bugs)". Your email-box will thank you for it.
The fundamental shift in "newemailtech" is away from
standard UNIX "diff" output, which is quite ugly, to a
prettier, better laid-out email.
</para>
</section>
<section id="watchsettings">
<title>"Watching" Users</title>
<note> <note>
<para> <para>The ability to watch other users may not be available in all
This option may not be available in all Bugzilla Bugzilla installations. If you can't see it, ask your
installations, depending upon the preferences of the administrator.</para>
systems administrator responsible for the setup of your
Bugzilla. However, if you really want this functionality,
ask her to "enable watchers in Params".
</para>
</note> </note>
<para>
By entering user email names into the "Users to watch" text
entry box, delineated by commas, you can watch bugs of other
users. This powerful functionality enables seamless
transitions as developers change projects, managers wish to
get in touch with the issues faced by their direct reports,
or users go on vacation. If any of these three situations
apply to you, you will undoubtedly find this feature quite
convenient.
</para>
</section>
</section> </section>
<section id="footersettings"> <section id="footersettings">
<title>Page Footer</title> <title>Page Footer</title>
<note>
<para> <para>On the Search page, you can store queries in Bugzilla, so if you
By default, this page is quite barren. However, go explore regularly run a particular query it is just a drop-down menu away.
the Query Page some more; you will find that you can store Once you have a stored query, you can come
numerous queries on the server, so if you regularly run a here to request that it also be displayed in your page footer.</para>
particular query it is just a drop-down menu away. On this
page of Preferences, if you have many stored queries you can
elect to have them always one-click away!
</para>
</note>
<para>
If you have many stored queries on the server, here you will
find individual drop-downs for each stored query. Each
drop-down gives you the option of that query appearing on the
footer of every page in Bugzilla! This gives you powerful
one-click access to any complex searches you may set up, and
is an excellent way to impress your boss...
</para>
<tip>
<para>By default, the "My Bugs" link appears at the bottom of
each page. However, this query gives you both the bugs you
have reported, as well as those you are assigned. One of
the most common uses for this page is to remove the "My
Bugs" link, replacing it with two other queries, commonly
called "My Bug Reports" and "My Bugs" (but only referencing
bugs assigned to you). This allows you to distinguish those
bugs you have reported from those you are assigned. I
commonly set up complex Boolean queries in the Query page
and link them to my footer in this page. When they are
significantly complex, a one-click reference can save hours
of work.</para>
</tip>
</section> </section>
<section id="permissionsettings"> <section id="permissionsettings">
<title>Permissions</title> <title>Permissions</title>
<para>
This is a purely informative page which outlines your current
permissions on this installation of Bugzilla. If you have
permissions to grant certain permissions to other users, the
"other users" link appears on this page as well as the footer.
For more information regarding user administration, please
consult the Administration section of this Guide.
</para>
</section>
</section>
<section id="usingbz-conc"> <para>This is a purely informative page which outlines your current
<title>Using Bugzilla-Conclusion</title> permissions on this installation of Bugzilla - what product groups you
<para> are in, and whether you can edit bugs or perform various administration
Thank you for reading through this portion of the Bugzilla functions.</para>
Guide. I anticipate it may not yet meet the needs of all </section>
readers. If you have additional comments or corrections to
make, please submit your contributions to the <ulink
url="mailto://mozilla-webtools@mozilla.org">mozilla-webtools</ulink> mailing list/newsgroup. The mailing list is mirrored to the netscape.public.mozilla.webtools newsgroup, and the newsgroup is mirrored to mozilla-webtools@mozilla.org
</para>
</section> </section>
</chapter> </chapter>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml
...@@ -943,8 +567,9 @@ sgml-local-ecat-files:nil ...@@ -943,8 +567,9 @@ sgml-local-ecat-files:nil
sgml-minimize-attributes:nil sgml-minimize-attributes:nil
sgml-namecase-general:t sgml-namecase-general:t
sgml-omittag:t sgml-omittag:t
sgml-parent-document:("Bugzilla-Guide.sgml" "book" "chapter") sgml-parent-document:("Bugzilla-Guide.xml" "book" "chapter")
sgml-shorttag:t sgml-shorttag:t
sgml-tag-region-if-active:t sgml-tag-region-if-active:t
End: End:
--> -->
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment