Deleting Form Information
Summary
When using forms, FireFox can store the information to save time re-entering information into the form. However, deleting information from FireFox's storage incorrectly removes the data (resulting in the loss of other data). In addition, the information that is deleted returns after restarting the browser.
Application Description
Mozilla's FireFox is an Internet browser available for Linux, MacOS, and Windows. At the time of writing this presentation, FireFox was still pre-1.0 (meaning that it was still a preview release for testing purposes).

Test Design
This example demonstrates the use of Specification-based testing (or Spec-based testing). When Spec-based testing, the tester analyzes the program's performance based on what the specifications state.
For this presenation, we are looking at the specifications for removing saved form data in Mozilla FireFox. When a user types information into a form, such as a username and password on a login site, that information can be saved so that whenever the users starts typing in that username, FireFox will fill in the rest of the form. According to the specifications, we can remove that information that has been saved by selecting the user and pressing Shift-Delete inside the form. We will try entering a few users with very similar names into a login page, and then we will remove a couple (the use of similar names is only so that all of the names will appear easily). We expect that the correct users will be permanently removed.
Spec-based testing can be useful for determining the proper function of a program if the tester is unaware of how the program should perform. It is also useful to verify that the program and documentation match each other, such that users will be able to read the documentation to use the program correctly. However, keep in mind that documentation is often out of date or written by people who have not worked with the program directly.
Performing the Test

We can use this page to type in a few usernames and passwords, and then verify that the form information was saved. Each time we type in a username and password combination, the they will be saved. Then, when we begin to type in the username letter, the the rest of the username and the password will automatically be filled. Since this is just a test page, we can make up the usernames and passwords without causing any problems.





Instead of removing 'user2', the last user was removed.
Results/Relevance

When we had pressed Shift-Delete orginally we had thought that we had lost data we had not wanted to lose. Then, after exiting the program and returning, we found that none of our data had been lost. All of the users were still there, with their passwords intact. What this means is that, as testers, we just came across something great: 2 bugs in 1!
For security reasons, this bug is certainly an issue. Any user who deletes their form information so that other users could not access their data will be unaware that their user information is in fact still there. Secondly, when the user wants to delete some user information, they may be shocked to see other user information disappearing.
Specification-based testing is very useful for finding areas to test. By looking up a common feature like shortcut commands or help features, we see an entire list of components that we can then quickly and systematically test.
Similar Tests/Additional Notes
More information about the bug in this presentation can be found on Mozilla's Bugzilla site and FireFox's Smoke test site.
Reading the documentation, even if out of date, can often provide a fundamental (and extremely valuable) understanding of what a program does. If you do not have much experience with a program that you are required to test, try reading the documentation first. You most likely will find it much easier to navigate through the program's functions and components.
Configuration Notes
Testing Mozilla's FireFox v0.9.1 on: