Software QA FYI - SQAFYI

Manual Software Testing Process


In order to make the software free of defects or bugs, it has to go through a rigorous automated or manual testing process. In most organizations, the software goes through both manual testing process and automated testing process. Manual testing is important for areas, where the defect may not be detected by an automated software test plan.

Software testing is a process consisting of all life cycle activities, both static and dynamic, concerned with planning, preparation and evaluation of software products and related work products to determine, that they satisfy specified requirements, to demonstrate that they are fit for purpose and to detect defects. ~ Foundation of Software Testing by Dorothy Graham, Erik van Veenendal, Isabel Evans, Rex Black.

The above mentioned definition of software testing gives out clear pointers about what is software testing exactly. Software testing is an activity that is carried out to ensure that the software product is not only defect free, but it also meets the requirements of the end user. There has to be an automated and/or manual software testing process in place, so that the testing activities can be carried out smoothly and equal importance is laid on every aspect of the testing process. Some of the steps in the software testing process may differ based on the method used to develop the software.

What is Manual Testing Process?

The software testing process as we see today has taken a number of years to evolve. The basic steps in the manual testing process are:

* Planning and Control
* Analysis and Design
* Implementation and Execution
* Evaluating Exit Criteria and Reporting
* Closure Activities

It is seen, that whatever be the level of software testing, that has been carried out, the main activities remain more or less the same, most of the time. The difference that is often seen is in terms of formality observed through the different stages and at different levels of testing process. The change is normally seen, when the software testing process moves to the advanced stages. It is often due to the fact that some tasks of the process become more relevant during the advanced stages. The process has a logical sequence to it, however, sometimes the activities of the process may either overlap or they may take place simultaneously or activities may be repeated.

Planning and Control
The planning and control stage has an important role to play in the automated as well as manual software testing process.

* The aim of this stage is to identify the scope and risk of the process and determine the aim of the testing process.
* It is in this stage that the approach to be utilized for testing process is determined. The test approach includes deciding the techniques, test items, coverage, etc., to be used for the testing process.
* The testing team to be assigned to the project is decided upon as well. Along with the team, the other resources necessary for the testing process are also determined.
* Test analysis and design tasks are scheduled along with test implementation, execution and evaluation.
* An important part of this stage is determining the exit criteria. It is the exit criteria, which helps in determining the tasks and checks that have to be completed for a particular stage, before it can be declared that the testing activity is finished.

* There is constant monitoring during the testing phase to ensure that the project does not deviate from its original plan. In case of variance in planned and the actual results, measures are taken to control damage.
* The reviews and testing process is measured and the results analysis is a part of this stage.
* The testing activity and the document writing process for the same are monitored, along with the test coverage and exit criteria.
* The stakeholders along with the senior managers are intimated about the progress of the testing process.
* In case of variance or any other problem, measures are taken to put the things right.
* The decisions about under what circumstances, continue further with the testing process, stop the testing process, deliver the software or postpone the delivery till the defects in the software are fixed, are made.

Full article...

Other Resource

... to read more articles, visit

Manual Software Testing Process