June 19, 2008

Testing without specification

If you ask me, testing without any spec is a real pain on ass activity. Nowadays it’s a major challenge to many Test gurus. Say we have a requirement to test and that is the only requirement we have. The immediate reaction of testers will be “How can I be expected to test without specification” or “What’s the delivery date”.

Though different companies follow different concepts and procedures in testing projects, there is very little which is unique in testing job.

Whenever a project manager requests you to start testing a project which can be either a new project or a maintenance build, resist the temptation to start testing immediately. Our first step has to be identifying the project size and determining what can be expected from this testing experience.

It is important to create a functional specification before starting the test. If we do not have a clear statement of the objectives of the project, we may not know when to complete the testing.
If you are “No time to plan, I’m late, I’m late” sort of person, at least attempt to list everything that need to be done to complete your project.

Then we have to size our work effort. It’s good to maintain a good working relationship with the people who delivered the system to be tested. I always make frequent discussions with developers and identify as much documentation as possible. An effective way to identify the functionality of a component will be to ask the developers to list all the expected outcome of that component. Next I find out the input of the component followed by the necessary steps to produce the output. This is a handy way to capture requirement.

Once we sized and prioritised our work effort, it’s possible to provide an estimate of our testing effort to the management. This is a crucial test management practice. I highly advice all test professionals to find an estimate of how long each activity in the test activity list will take. This will help the project manager to plan his schedule.

Finally, I often review my activity list because customer requirement is likely to change frequently. So we have to add new ones if needed and avoid keeping anything in memory. Even I am working in a short time period, I try to document everything. This makes my life ease when producing weekly report to the project manager. Yes, make yourself the habit of reporting your findings to the relevant parties. This will help to keep the communication flow in between the team alive.

Hey folk!! Am I talking a lot of management stuff? Cool. Through my next blog I am gonna share my experience on TestNG- The next generation java testing framework. See you all soon.