Firefox's Old Registry Entries Are Not Cleaned Up After Installing a New Version
Summary
We are going to test the Mozilla Firefox installer using a risk catalog that describes the most common software installation problems. When a new version of Mozilla Firefox (Windows version) is downloaded and installed it replaces the files of the old version but does not remove the old registry keys that describe the software. As a result the menu in Add/Remove programs in the control panel contains an entry for each version that has been installed but they all refer to the files of the latest version.
Application Description
Mozilla Firefox is a web browser developed by mozilla.org. It can be used to read HTML documents online or on the local machine, check email, download files, and others. It has built in Tab browsing, pop-up blocking, image blocking and so on (Source: www.mozilla.org).
When Firefox is installed it writes the files it needs to a location specified by the user. It also writes information to the registry, so information about the application can be displayed in the Add/Remove menu of the control panel.
Test Design
In this example we are going to perform Risk Based Testing using bug taxonomies. Let's use a portion of the installer products risk catalog described in the risk based testing slides (www.testingeducation.org, slide 26):
Wrong files installed
For our tests, we will go through the points in the catalog and verify that the application under test does not have any of the errors described.
These are some of the examples that we can come up with, while using this failure mode list:
Let's start with our test case for #2. The test cases for #1 and #3 can be found in the Similar Tests section.
Performing the Test
Let's start with #2 "Old files not cleaned up after upgrade."
If we actually look in the registry, it shows that the new version was added but the entries for the old one were not removed.
Results/Relevance
The result is that our new version of Firefox is deleted. This is caused by the fact that even though there are two separate entries in the control panel, they both refer to the same files.
It is very likely that users will go through the Add/Remove menu to remove programs that they are not using anymore. They will see the entry for the old version of Firefox and they will probably think that it refers to the old files as well, but if they delete it, they will experience a very unpleasant surprise.
The goal of bug catalogs is to help us focus our thinking to a type of failure that is common for a specific area of the application. We probably could have found this bug with other testing techniques as well, but using a bug catalog was the easiest in this case because the test case that we generated from the catalog was specifically addressing the problem.
Similar Tests/Additional Notes
Let's try some of the other tests that we generated from our catalog:
"Temporary files not cleaned up "
It turns out that indeed after the installation the Windows temporary directory remains empty. It is possible that the application uses another directory for temporary files, but that would be another test.
"correct file installed in the wrong place"
Select a custom installation and then select a directory different than the default.
Now let's check the directory that we specified to make sure that the files are there.
The files are in the correct directory.
Configuration Notes
Testing mozilla.org's Firefox 1.0PR on: