You are on page 1of 9

Controlled copy

Guidelines
for
Manual Testing

Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected


Controlled copy                                                             Manual Testing   ­ Guidelines

Table of Contents

1.0 Introduction............................................................................... .............................3


1.1 What is Software Testing?............................................................................ ....................3
1.2 Why Test?.................................................................................................................. .........3
1.3 Principles of Testing................................................................................................... .......3
1.4 Can Testing be replaced?........................................................................ .........................4

2.0 Definitions and Acronyms............................................................. ........................4

3.0 Tasks............................................................................................. ..........................5


3.1 Test Strategy Definition............................................................................................. ........5
3.2 Test Plan............................................................................................................... ..............5
3.3 Test Design...................................................................................................................... ...5
3.4 Test Execution and Reporting..................................................................... .....................6

4.0 When do you stop testing?................................................................................. ...7

5.0 Useful tips................................................................................................ ...............8

6.0 Common Pitfalls.................................................................................. ...................9

7.0 Templates...................................................................................................... ..........9

8.0 References............................................................................................... ...............9

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

1.1What is Software Testing?


IEEE definition states “Testing is the process of exercising or evaluating a system or
system component by manual or automated means to verify that it satisfies specified
requirements”

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?”

On a whole, testing objectives could be summarized as:

• Testing is a process of executing a program with the intent of finding an error.

• A good test is one that has a high probability of finding an as yet undiscovered error.

• A successful test is one that uncovers an as yet undiscovered error.

1.2Why Test?
• Developers not fallible

• Bugs in compilers, languages, DBs, OS

• Certain bugs easier to find in testing

• Don’t want customers to find bugs

• Post release debugging is expensive

• Good test design is challenging and rewarding

1.3Principles of Testing
• All tests should be traceable to requirements

• Tests should be planned ahead of execution

3
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 3 of 9
Controlled copy                                                             Manual Testing   ­ Guidelines

• Pareto principle – isolate suspect components for vigorous testing (80% of


defects can be traced back to 20% of requirements)

• Testing should be done in an outward manner (Unit ->System)

1.4Can Testing be replaced?


Though there are other approaches possible to create good software like Inspection,
Reviews, Design Style, Static analysis, Language Checks etc software testing
cannot be done away with. Review, inspect, read, walkthrough and TEST mandatorily

2.0Definitions and Acronyms


Acronym Definition
None

4
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 4 of 9
Controlled copy                                                             Manual Testing   ­ Guidelines

3.0Tasks

3.1Test Strategy Definition


A test strategy is a statement of the overall approach to testing, identifying what levels of
testing are to be applied, and the methods, techniques and tools.

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.

Unit Test Plan:

A Unit Test Plan describes the plans for testing individual units / components / modules
of the software

Integration Test Plan:

An Integration Test Plan describes the plan for testing integrated software components.

System Test Plan:

A System Test Plan describes the plan for testing the system as a whole.

Acceptance Test Plan:

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

Test case Failure Application Failure

The testing process could be depicted as given below :

6
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 6 of 9
Controlled copy                                                             Manual Testing   ­ Guidelines

Define Scope, Create Create Automate Test


Goals, Risks, Scenarios/ Manual Test Cases
Entrance / Exit Suites / Sets Cases
Criteria,
Environment etc.

Execute Test
Cases Analyz
e
Document results
/ Maintain Metrics

Re-develop Report / Track


test cases defects and
fixes

4.0When do you stop testing?


Before we ask this question, let us try to answer another question

“Is Complete Testing Possible?”

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

Some of the STOP CRITERIAS are:

• Time runs out (Poor Criteria !!)

• Resources run out

• Testing stops when all test cases execute without producing any error

• Testing stops when certain number of errors are found

• 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

• Foster a quality culture that wants to find and prevent problems

• Set clear directions and expectations

• Delegate responsibility and accountability to good people

• Invest in team tooling and support infrastructure

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

• Belief that the system works

• Negative attitude towards effective testing

• Ego

• Don’t want to fail

• Conflict between testers and developers

• Testing is least structured

• Testing is expensive

• Delivery commitments

Some of the pitfalls of manual testing could be

• Testing speed cannot match development speed

• Each build not fully tested

• Test coverage decreases, more bugs left undetected

7.0Templates
Test Plan

Test Cases & Log

8.0References
Test Strategy Guidelines

9
Release ID: QGTS-MANUAL.doc / 8.01 / 05.03.2004 C3: Protected Page 9 of 9

You might also like