When I first began programming in the 1960s, testing was done to prove that code worked. The first big change to that approach came with IBM's Black Team, which took the opposite tack and tried to break the code -- an approach that was radical at the time. In the next popular phase, the color of testing changed, and white box testing, in which you know what a program is supposed to do and check that it does it, was all the vogue.
Those approaches come from the world of closed source, proprietary software. Testing in the FOSS world is different. For one thing, bug reports can come from anywhere, not just from a team assigned to test the product. The transparency of the code invites everyone to explore.
Former Debian Project Leader Martin Michlmayr advises, "If you want to test something, run the latest version. This may sound obvious but apparently it's not. If you run Debian, upgrade to unstable and maybe pull in some packages from experimental. For other software, try the latest version from the project's version control system and see what breakage you can find.
"You have to be creative, and you have to be quick. You'd be amazed how many bug reports we get for issues that have already been fixed. It's therefore important to run the latest version and to check for bugs in the bug tracker. If you cannot run the latest version all the time, at least try to verify whether the issue you see still applies to the latest release.
"Regarding the bit about being creative: we get a lot of bug reports in Debian and really appreciate them. But there are many issues that many people find, and that can be found easily. What really helps is if someone is creative about finding things, or maybe just very patient. You don't necessarily need to read source code, although this may be a good exercise for someone trying to learn how to code. Someone could also take the manual or man page of a program and compare it with the actual behaviour -- I bet there are plenty of examples where the docs are out of date.
"Try to do unusual stuff with the software or test it in unusual environments, such as especially slow hardware or uncommon platforms."
In addition to Michlmayr, I got tips from GNOME bug master Luis Villa, Debian bug-finder extraordinaire Dan Jacobson, and Dave Freese, author of several ham radio applications for Linux. They came up with these tips for better testing:
Michlmayr also suggests several pages for additional reading:
How to Report Bugs Effectively
Bug Writing Guidelines
How to Write a Useful
Bug Report
Lessons from GNOME Project QA
Testing is a great way for non-programmers and even non-geeks to contribute to the greater good. Get involved with your favorite free software projects and send them a bug report or two.
Note: Comments are owned by the poster. We are not responsible for their content.
Proprietary shops have learned that it is cheaper to release buggy software than it is to release better software.
Once
Posted by: Anonymous Coward on March 13, 2007 10:23 PMTook me only a couple of minutes, and no special skills was needed.
#