Upload
francis-haynes
View
218
Download
0
Tags:
Embed Size (px)
Citation preview
Introduction to TestingIntroduction to Testing
TopicsTopics
Who are we?Who are we? Software Testing Definition Software Testing Definition
and Goalsand Goals Facts and NumbersFacts and Numbers
The Software Quality DilemmaThe Software Quality Dilemma
CostTime
Quality
TopicsTopics
Who are we?Who are we? Software Testing Definition Software Testing Definition
and Goalsand Goals Facts and NumbersFacts and Numbers
Software Testing - Definition Software Testing - Definition “The process of exercising or evaluating
a system by manual or automated
means to verify that it satisfies specified
requirements or to identify differences
between expected and actual results.”
(IEEE Standard Glossary, 1983)
Software TestingSoftware Testing
Software testing is Software testing is notnot a phase a phase It is a process that should be integrated into It is a process that should be integrated into
the entire software life-cyclethe entire software life-cycle There are testing deliverables associated with There are testing deliverables associated with
every phase of developmentevery phase of development
What are the Goals of Testing?What are the Goals of Testing?
To locate and prevent bugs as early as possibleTo locate and prevent bugs as early as possible To perform all Tests according to the To perform all Tests according to the
Requirements, in the most effective and economic Requirements, in the most effective and economic wayway
To bring the software product to a level of quality To bring the software product to a level of quality that is appropriate for the clientthat is appropriate for the client
We perform all of the above throughWe perform all of the above through Methodology Implementation Methodology Implementation
Why Does Software Have Why Does Software Have Bugs?Bugs?
Miscommunication or Lack of Miscommunication or Lack of CommunicationCommunication
MisunderstandingsMisunderstandings Time PressureTime Pressure Programmer’s Skill Level is LowProgrammer’s Skill Level is Low
Bad Communication
Bad Communication - Bad Communication - Requirements Requirements
TopicsTopics
Who are we?Who are we? Software Testing Definition Software Testing Definition
and Goalsand Goals Facts and NumbersFacts and Numbers
Where do Software Problems Where do Software Problems Come From?Come From?
Insufficiently defined requirementsInsufficiently defined requirements 50%50% Ambiguous or insufficient designAmbiguous or insufficient design30%30% Programming errors Programming errors 20%20%
0
20
40
60
80
100
Req Design Coding Int. test Sys. test Operation
Cost of Fixing BugsCost of Fixing Bugs
The later a bug is found, the higher the
cost of fixing it
RememberRemember
SOW DPD CODING TESTING OGS
Errors? Errors? Fix Them as Early as PossibleFix Them as Early as Possible
Professional Testing Professional Testing
Professionalism in testing is the ability to select the
minimum number of efficient test cases that will verify
the maximum number of system functions.
When to Stop Testing ? When to Stop Testing ?
Never Never When the number of detected defects in When the number of detected defects in
one cycle is less than the agreed upon one cycle is less than the agreed upon numbernumber
When no critical or highly severe When no critical or highly severe defects are detected defects are detected
When the time has expired When the time has expired
Picturing the Test SystemPicturing the Test System
TestTeam
Test Environment
TestProcesses Testware
DesignsAcquiresConfiguresUtilizesSupport
Provides a Platform
for the operation of
Determine the
usage of
DesignsAcquires
ConfiguresUtilizesSupport
CreateArticulates
TrainsApplies
Internalize