BY
Chiyanchiru
3rdrd year [Link] IT
Test Plan – What?
Derived from Test Approach, Requirements, Project
Plan, Functional Spec., and Design Spec
Details out project-specific Test Approach
Include testing Risk Assessment
Include preliminary Test Schedule
Lists Resource requirements
3
Test Plan – Why?
Identify Risks and Assumptions up front to reduce
surprises later.
Communicate objectives to all team members.
Foundation for Test Spec, Test Cases, and ultimately
the Bugs we find.
Failing to plan = planning to fail.
4
Test Plan – Definition
Test strategy identifies multiple test levels.
Activities must be planned well in advance
It has to be formally documented.
Individual test levels are carried out.
5
Test Plan – Consists of…
Unit Testing Tools
Required tool to test at unit level
Priority of Program units
Module-wise priority
Naming convention for test cases
Status reporting mechanism
Regression test approach
6
Risk Analysis
A potential for loss or damage to an Organization
from materialized threats.
Risk Analysis attempts to identify all the risks and
then quantify the severity of the risks.
Risk Identification
Software Risks
Business Risks
Testing Risks
Premature Release Risk
Risk Methods
7
Risk Analysis continued…
Software Risks
Knowledge of the most common risks
associated with Software development, and
the platform you are working on
Business Risks
Most common risks associated with the
business using the Software
Testing Risks
Knowledge of the most common risks
associated with Software Testing for the
platform you are working on, tools being
used, and test methods being applied
8
When Testing should start & stop?
TO START THE TEST:
The goal of Software Tester is to find bugs as early as
possible, and make them sure they are fixed
The number one cause of Software bugs is the
Specification
The next largest source of bugs is the Design
TO STOP THE TEST:
This can be difficult to determine
Some reasons to stop test are:
Test cases completed with certain percentages
passed
Test budget depleted
The rate at which Bugs can be found is too
small
Beta or Alpha Testing period ends
10
Test Execution
Testing of an application includes:
Unit Testing
Integration testing
System Testing
Acceptance testing
These are the functional testing strategies and few other functional,
non-functional, performance and other testing methods can also be
applied on the software.
11
Test Execution – Unit testing
Is the overall plan to carry out the unit test activities.
The lead tester prepares it and it will be distributed to the
individual testers
Basic input/output of the units functionality will be tested
Input units will be tested for the format, alignment, accuracy
and the totals
The UTP will clearly give the rules of what data types are present
in the system, their format and their boundary conditions
Testing the screens, files, database etc., are to be given in proper
sequence
12
Test Execution – Integration testing
The integration test plan is the overall plan for carrying
out the activities in the integration test level
• It specifies the kinds of interfaces fall under the scope of testing internal,
external interfaces, with request and response is to be explained
• Two approaches practiced are Top-Down and Bottom-Up integrations
• Given this correctly, the testing activities will lead to the product, slowly
building the product, unit by unit and then integrating them
13
Test Execution – System testing
The system test plan is the overall plan carrying out the
system test level activities
System testing is based on the
requirements
All requirements are to be verified in the
scope of system testing
The requirements can be grouped in terms
of the functionality
Based on this, there may be priorities also
among the functional groups
Apart from this what special testing is
performed are also stated here
14
Test Execution – Non-functional testing
Non-functional testing includes:
Installation testing – Installation environment, practical obstacles etc.
Compatibility testing – compatibility with other system software
Configuration testing - how well the product works with a broad range of
hardware/peripheral equipment configurations as well as on different
operating systems and software
Security testing - secure from mistaken/accidental users, hackers, and other
malevolent attackers
Recovery testing - how well a system recovers from crashes, hardware
failures, or other catastrophic problems
Usability testing - Testing for 'user-friendliness'
15
Test Execution – Performance testing
Performance testing includes:
Load testing
Stress testing
Load Testing:
Testing with the intent of determining how well
the product handles competition for system
resources.
The competition may come in the form of
network traffic, CPU utilization or memory
allocation
Stress Testing :
Testing with the intent of determining how well a
product performs when a load is placed on the
system resources that nears and then exceeds
capacity
16
BUG LIFE CYCLE - What is a bug?
A software bug is an error, flaw, mistake,
failure, or fault in a computer program that
prevents it from behaving as intended.
Stages involved in Bug Life Cycle
The different stages involved in a bug life cycle
are as follows:
•Finding Bugs
•Reporting/ Documentation
•Fixing
•Retesting
•Closing
18
Priority Levels of a Bug
Critical Bug :
An item that prevents further testing of the product.
No workaround is possible for such bugs.
Major / High Bug:
The defects cause other functionality to fail to meet requirements.
The workaround can be provided for such bugs.
Average / Medium Bug:
The defects which do not conform to standard. Easy workarounds exists to achieve
functionality objectives.
Minor / Low Bug:
Cosmetic defects which does not affect the functionality of the system.
19
Various Bug tracking tools
The various bug tracking tools available are:
Quality Center® – from HP
Bugzilla® - from Mozilla
Dev Track® – from TechExcel
20
21