Nine Steps to Software Testing Success

[article]
Member Submitted
Summary:

Formal training for software test professionals is surprisingly sparse. Classes on testing are generally part of a larger computer curriculum. Because of this, most testers come from a variety of backgrounds, and may not know how to get started. This paper lists some steps, hints, and tips on testing software.

Formal training for software test professionals is surprisingly sparse. Classes on testing are generally part of a larger computer curriculum. Because of this, most testers come from a variety of backgrounds, and may not know how to get started. This paper lists some steps, hints, and tips on testing software.

New ideas
It is much easier for new ideas to come from outside of a project, rather than from within. This is because projects tend to be self-contained little islands, where the same ideas are recycled over and over again. Almost any idea that comes from outside of this insular environment is bound to be a new one, and can lead to needed improvements.

One source of these new ideas is books. Read the first four chapters of several books on testing and software project management, while quickly jotting down anything that sounds like an idea you haven't heard before. This will give you some material to work from when starting your test.

Another possibility is talking with friends, colleagues, and conference attendees that are in the software testing or development field. Regular lunches or just meeting for coffee to bounce ideas around can give you many ideas to try. There probably won't be as many ideas here as in a book, but they are likely to be of higher quality. This is because you'll have more opinions on how well the idea is likely to work in your environment and situation.

Establish the goals
The first step is to establish the goals for the test. Identify the areas of the product that need the most testing, what kinds of hardware and operating system platforms will be required, and the available resources for the project.

Areas that need the most testing
These can be new additions, the core functions, or just places where the developers have been having trouble during unit test. To find these areas, you'll need to talk with as many different people as you can. Customers, developers, and other testers are good sources. The documentation group is also an oftenoverlooked source of information here. They’ll know about any product areas that are particularly complex, and these tend to be the same areas that have defects.

Hardware, software, and platform requirements
This is an important area, as these requirements increase the cost of the test. If running the program on ten different operating systems is important, than you'll need to install them, possibly on ten different machines. These machines and the software will all have to be paid for and obtained prior to the test. Installing the operating systems will also require a certain amount of time before the test starts, and some of the testers may need education on them.

It is important to find out these requirements early in the planning cycle, to allow time for all of this.

Available resources
Resources are more than just machines and software. They include lab space, testers, support personnel, and even time. All of these will affect your ability to conduct the test, and may limit the scope or size of it. To create a plan that works with the available resources, you’ll need to know what they are first.

Organize
Now you’ve assembled lots of information and requirements, but it is in an unorganized, unmanageable form. Organizing this information will help you keep everything straight, make the right decisions, and eliminate any unnecessary or duplicate steps.

Prioritize
Now that everything is organized, take a look at which aspects are the most important for the test. These are the areas that align most closely with your already established goals.

About the author

Sean P. Logue's picture Sean P. Logue

Sean P. Logue has over fourteen years of experience in the technical writing, development, and testing fields working for a large computer company. He currently manages a combined Test and ID department.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!

Upcoming Events

May 04
May 04
May 04
Jun 01