Vous êtes sur la page 1sur 5

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.

Planning
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.
Control
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.
Analysis and Design
It is in this stage, that the requirements and objectives are converted into test conditions and test
design. Test procedure is also decided upon in this stage itself.
The test basis, which include product risk analysis, requirements, software architecture, design
specifications, interfaces, etc., are reviewed during this activity.
Tests are designed and written and readied even before the actual piece of software has been
developed. Different software testing methodologies are used for designing the tests.
Along with writing the test cases, the different test conditions for each of the test items are
identified. This also ensures that the module behavior and structure is well understood by the
testing team.
When the test cases are being designed, it is here that the testability of the requirements are
accessed.
Implementation and Execution
At this point, the test cases are created considering the different test conditions along with the test
design. Test data is generated, so that the software can be checked for errors. If automation testing
is carried out, then the scripts for the automation process are generated at this stage.

Implementation
The aim of the implementation activity is to develop the tests from the design.
It is at this stage that the tests are prioritized according to their importance to the end user and for
the particular release. In some cases, certain test cases although important may be prioritized for a
later stage, due to paucity of time for the current release.
Once the test cases have been prioritized, a test suite is created. In a test suite, all the prioritized test
cases that logically form a single group are put together.
Before the tests can be carried out, the environment on which the tests have to be carried out is
implemented. In other words, the software has to be installed for the testers to carry out the tests.
Execution
The test cases and/or test suites are executed and the results of the tests are recorded.
The actual and the expected results are compared and the variance is reported, along with the test
data used.
After the defect has been fixed, retests are carried out to ensure that the defects in the software are
indeed fixed. Along withe the retests, regression tests are carried out to ensure no new defects were
introduced into the software, due to the changes made to the software.
Evaluating Exit Criteria and Reporting
After the tests have been carried out, it is checked if the defined objectives tallies with the test
execution. It is with the exit criteria that it can be decided whether the testing activity needs to be
carried out further or it can be declared finished. Evaluation is carried out to check, if more testing
activity needs to be carried out on the software. A report has to be written out for the stakeholders,
so that they are aware about the actual status of the software.

Closure Activities
This is an important stage for the testing team. It is in this phase that data for the test activities that
were carried out is compiled. It helps in gathering information to ensure that the mistakes made
during this testing activity are not repeated in future. In the closure activity stage, the actual
deliverable is checked against the planned deliverable. The testware used for the testing activities
are finalized and preserved for later use. In some cases, the testware has to be handed over to the
organization that is going to support the software. The entire testing activity is examined to know
the positives and the negative outcomes from the entire experience and use it for software testing
process improvement in the next projects.

This, in short, was the process of testing a software manually. The actual software testing process
followed varies from one organization to another and also depends on the software development
methodology used. In some cases, the testing activity may be outsourced to a third party in such
cases, the process may differ slightly.
By Bhakti Satalkar
Published: 5/10/2011


Don't Miss
Software Testing Methodologies
Software Testing - How To Go About For Beginners
Software Testing - Test Cases
Software Testing - White Box Testing Strategy
Software Testing Tutorial
More From Buzzle
Software Testing - Black Box Testing Strategy
Software Testing Life Cycle
Types of Software Testing
Software Testing Interview Questions
Software Testing - Bug Life Cycles
Software Testing Checklists
Software Testing Interview Questions and Answers
Software Testing - Bug and Statuses Used During a Bug Life Cycle
Software Verification & Validation Model - An Introduction
Manual Testing Interview Questions
Read more at Buzzle: http://www.buzzle.com/articles/manual-software-testing-process.html

Vous aimerez peut-être aussi