Professional Documents
Culture Documents
Guidelines
for
Manual Testing
Table of Contents
2
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 2 of 9
Controlled copy Manual Testing Guidelines
1.0Introduction
This document gives an overview of Software Testing, the different types of testing that
can be done and the activities involved in manual software testing
As such, there are many published definitions of software testing, however all of these
definitions boils down to essentially the same thing: software testing is the process of
executing software in a controlled manner, in order to answer the question “Does the
software behave as specified?”
• A good test is one that has a high probability of finding an as yet undiscovered error.
1.2Why Test?
• Developers not fallible
1.3Principles of Testing
• All tests should be traceable to requirements
3
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 3 of 9
Controlled copy Manual Testing Guidelines
4
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 4 of 9
Controlled copy Manual Testing Guidelines
3.0Tasks
Refer to Test Strategy Guidelines for more information on defining the test strategy
3.2Test Plan
The next task would be the preparation of a Test Plan
A test plan states what the items to be tested are, at what level they will be tested, what
sequence they are to be tested in, how the test strategy will be applied testing of each
item, and describes the test environment.
Different test plans are prepared based on the level of testing. The objective of each test
plan is to provide a plan for verification, by testing the software, that the software
produced fulfills the requirements or design statements of the appropriate software
specification.
A Unit Test Plan describes the plans for testing individual units / components / modules
of the software
An Integration Test Plan describes the plan for testing integrated software components.
A System Test Plan describes the plan for testing the system as a whole.
An Acceptance Test Plan describes the plan for acceptance testing of the software.
Normally “Acceptance test plan” is prepared by the Customer taking the help of
Cognizant.
3.3Test Design
Once the test plan for a level of testing has been written, the next stage is to specify a
5
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 5 of 9
Controlled copy Manual Testing Guidelines
set of test cases or test paths for each item to be tested at that level. A number of test
cases will be identified for each item to be tested at each level of testing. Each test
case will specify how the implementation of a particular requirement or design is to be
tested and the criteria for success of each test.
• A Unit Test Specification will detail the test cases for testing individual units of the
software
• A Integration Test Specification will detail the test cases for each stage of
integration of tested software components
• A System Test Specification will detail the test cases of system testing of the
software
• An Acceptance Test Specification will detail the test cases of acceptance testing
of the software
It is important to design test cases for both positive and negative testing. Positive
testing checks whether the software is doing what it is supposed to do and Negative
testing checks whether the software is doing what it is not supposed to do.
3.4Test Execution
Create Test Strategy and
Create Reporting
Test Plan / Design
The next stage is performing the necessary testing. The output of test execution is
recorded in a Test Results file normally called as the Test Log. These actual results are
then compared with the Expected result of the Test Specification to determine if the test
case has been successful or not. Accordingly a “Pass / Fail” is marked against the
respective test case. If the test case has been a Failure, then a re-run of the test case
is done and results noted.
Perform Tests
Passes
6
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 6 of 9
Controlled copy Manual Testing Guidelines
Execute Test
Cases Analyz
e
Document results
/ Maintain Metrics
Obviously the answer is NO. To prove that a program is completely free of bugs is
7
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 7 of 9
Controlled copy Manual Testing Guidelines
practically impossible and theoretically a mammoth exercise. Therefore the aim of testing is
to provide a suitable, convincing demonstration that the program has been tested enough
• Testing stops when all test cases execute without producing any error
• Testing stops when all statements and all branches are executed and all test cases
execute without failure
• Testing stops when the result is unproductive (No. of errors per person per day reduces)
5.0Useful tips
• Manage testing seriously as development projects are managed
8
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 8 of 9
Controlled copy Manual Testing Guidelines
6.0Common Pitfalls
Some of the aspects that hinder testing itself could be
• Optimism
• Ego
• Testing is expensive
• Delivery commitments
7.0Templates
Test Plan
8.0References
Test Strategy Guidelines
9
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 9 of 9