< Day Day Up > |
Bugzilla is the tool used at Mozilla to track bugs in the various products. This program is accessible over the Internet using Firefox (or another browser). The problems of tracking and managing bugs in software can be daunting, especially when many developers are involved. Mozilla's problems are even more difficult because it has no direct control over many of the developers. Note Bugzilla is used by several other organizations to track their software bugs. In fact, more than 400 organizations, companies, and projects were using Bugzilla at the time of this writing. If you want to use Bugzilla, check http://www.bugzilla.org/download/ for download instructions. Bugzilla resolves many of the problems that bug management present and is used to track and manage bugs in Firefox, Thunderbird, Mozilla, and Camino. You can search for bugs, file bugs, comment on bugs, and be assigned a bug (be the person who fixes the bug). You can also add your email to the list of those who are notified when a bug's status changes. When you (or any other user) find a bug and want to file a bug report with Bugzilla, you need to follow a simple process:
Let's start with looking up bugs. Looking Up a BugTo look up a bug, first go to the Bugzilla page at https://bugzilla.mozilla.org/ (see Figure 17.1). This is the home page for Bugzilla and the starting point for your working with Bugzilla. Even though you must be a registered user to use Bugzilla, you can search and display bugs without being registered. Figure 17.1. The links on the lower left let you search, generate reports, and log in to Bugzilla.Searching for bugs can be done either on the main Bugzilla page (by bug number) or by using an advanced search with more options. The advanced search lets you restrict your search to a single product and find only open, closed, or all bugs. Tip Even experienced users are not successful on their first search sometimes. An experienced user realizes that perhaps he is using the wrong search term. The most advanced search allows very specific searches (see Figure 17.2). Figure 17.2. Bugzilla's advanced search enables you to find a specific bug by limiting the search.After you have searched for your bug and have not found it, you can consider filing a new bug report. Filing a BugAll bugs must have certain information. As well, you should do certain things to ensure that the bug is really in Firefox and not a profile, theme, or extension problem. Caution Do not use the Mozilla Bugzilla system to test and practice! Do not play with it it is not a toy. If you want to practice (and I recommend you do), go to http://landfill.bugzilla.org. There you will find a Bugzilla configuration you can play with; file wacky bug reports at; and generally see what happens when a bug is entered, commented on, and other actions (such as closing) are taken. You need to create a special Bugzilla account at landfill.bugzilla.org to use the test system. You can use the same account information as the Mozilla working Bugzilla system; there will be no conflict. First, try uninstalling your extensions. You should uninstall one at a time and test after each one is removed. If the bug goes away after removing an extension, that extension is likely the problem and not Firefox. Next, check to see whether there is something about the website that is unique. Does this bug affect more than one website? Is the website using plug-ins? Is the site trying to use JavaScript and you have JavaScript disabled? Is the site trying to display a pop-up window (for example, a web-based email system might do this to allow you to edit a new message)? Finally, you should create a new blank profile. Try to re-create the bug using this profile. If you cannot reproduce the bug with the new blank profile, your profile has likely been corrupted. Without this information, it is virtually impossible to find and fix the bug. Start at Bugzilla's Enter Bug page. Information needed in a good bug report includes
After you have collected all this information about your bug, you can go to the Bugzilla enter a new bug page at https://bugzilla.mozilla.org/enter_bug.cgi. For a bit of practice, go to http://landfill.bugzilla.org/bugzilla-2.20-branch/ (see Figure 17.3). Select Enter a New Bug Report from the list on the left side of the page. Figure 17.3. After you're logged on to landfill.bugzilla.org, you can create a new test bug report.The steps for creating new bug reports are as follows:
Tip Consider setting up an email account just for bugs. This can make managing your bugs easier because they will all be together, without unrelated clutter. Each time you file a bug report with Bugzilla, you receive an email copy of the bug. This copy can serve as a reminder that you filed a bug. Updating and Modifying a BugAny user can update her bug report, adding comments, information, and responses to other people's comments. On the Bugzilla test system, you can safely practice updating your bug reports. Because you probably won't have the bug number handy, you can do a search. I'll search for a bug I filed on landfill.bugzilla.org on spider digestive goo and heartburn. The bug is displayed using a form that shows all the bug fields (see Figure 17.6). Figure 17.6. I've scrolled down in this bug to the bottom part of the report, where I'll assign the bug to me.To tell Bugzilla that I will be the person who is fixing this bug, I click the Accept bug, which changes the status to Assigned. Then I click Commit. I can also choose to leave a reply to the bug's description (or reply to any other replies) by clicking the Reply link. You also can leave additional comments on an open bug. Tip Some fields, such as Reply, can be used by anyone who is logged in. Other fields might be restricted to either the creator or the Bugzilla administrators. Fixing a BugBoth creating and commenting on bugs are things anyone can do. Fixing bugs is a bit more complex, however. Virtually all bug repairs require that you be a programmer. Knowledge of C and C++, JavaScript, and the other technologies used in the Mozilla products is a must. But, should you have the skills and want to jump in with both feet, please do so. In Chapter, 18, "Browsing the Code," we will get into the actual work of fixing a bug. In this chapter, we deal with the administrative issues only. After you've found a bug you think you might be able to fix, I personally recommend that you try this to get some experience. Start with a downloaded set of source files (real bug fixing won't be done with the downloaded source, but for practice this is not a problem). Then do the following:
If you follow these steps with a few real bugs and are able to successfully fix them, you can consider fixing bugs for real. |
< Day Day Up > |