SlideShare a Scribd company logo
1 of 32
Download to read offline
3/18/2009 S.Sreenivasa Rao 1
Chapter 13Chapter 13
Software Testing StrategiesSoftware Testing Strategies
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 2
Software TestingSoftware Testing
Testing is the process of exercising aTesting is the process of exercising a
program with the specific intent of findingprogram with the specific intent of finding
errors prior to delivery to the end user.errors prior to delivery to the end user.
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Test strategy provides a road map;Test strategy provides a road map;
Steps to be conductedSteps to be conducted
WhenWhen
How much effort, time, resourcesHow much effort, time, resources
Test strategyTest strategy
Test planningTest planning
Test case designTest case design
Test executionTest execution
Resultant data collection and evaluationResultant data collection and evaluation
3
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Verification and ValidationVerification and Validation
V&VV&V
Testing is part of V&VTesting is part of V&V
Verification: Are we building the product right?Verification: Are we building the product right?
Software correctly implements a specificSoftware correctly implements a specific
functionfunction
Validation: Are we building the right product?Validation: Are we building the right product?
Software is traceable to customerSoftware is traceable to customer
requirementsrequirements 4
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 5
What Testing ShowsWhat Testing Shows
errorserrors
requirements conformancerequirements conformance
performanceperformance
an indicationan indication
of qualityof quality
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 6
Who Tests the Software?Who Tests the Software?
developerdeveloper independent testerindependent tester
Understands the systemUnderstands the system
but, will test "gently"but, will test "gently"
and, is driven by "delivery"and, is driven by "delivery"
Must learn about the system,Must learn about the system,
but, will attempt to break itbut, will attempt to break it
and, is driven by qualityand, is driven by quality
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 7
Testing StrategyTesting Strategy
unit testunit test integrationintegration
testtest
validationvalidation
testtest
systemsystem
testtest
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Levels of Testing
Client Needs
Requirements
Design
Code
Acceptance Testing
System Testing
Integration Testing
Unit testing
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
RequirementRequirement --> high> high--order tests:order tests:
validation test, System testvalidation test, System test
DesignDesign --> Integration test> Integration test
CodeCode --> unit test> unit test
9
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 10
Testing StrategyTesting Strategy
We begin byWe begin by ‘‘testingtesting--inin--thethe--smallsmall’’ and move towardand move toward
‘‘testingtesting--inin--thethe--largelarge’’
For conventional softwareFor conventional software
The module (component) is our initial focusThe module (component) is our initial focus
Integration of modules followsIntegration of modules follows
For OO softwareFor OO software
our focus whenour focus when ““testing in the smalltesting in the small”” changes from anchanges from an
individual module (the conventional view) to an OO classindividual module (the conventional view) to an OO class
that encompasses attributes and operations and impliesthat encompasses attributes and operations and implies
communication and collaborationcommunication and collaboration
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 11
Strategic IssuesStrategic Issues
Specify product requirements in a quantifiable manner long befoSpecify product requirements in a quantifiable manner long beforere
testing.testing.
State testing objectives explicitly.State testing objectives explicitly.
Understand the users of the software and develop a profile for eUnderstand the users of the software and develop a profile for eachach
user category.user category.
Develop a testing plan that emphasizesDevelop a testing plan that emphasizes ““rapid cycle testing.rapid cycle testing.””
BuildBuild ““robustrobust”” software that is designed to test itselfsoftware that is designed to test itself
Use effective formal technical reviews as a filter prior to testUse effective formal technical reviews as a filter prior to testinging
Conduct formal technical reviews to assess the test strategy andConduct formal technical reviews to assess the test strategy and testtest
cases themselves.cases themselves.
Develop a continuous improvement approach for the testingDevelop a continuous improvement approach for the testing
process.process.
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 12
Unit TestingUnit Testing
modulemodule
to beto be
testedtested
test casestest cases
resultsresults
softwaresoftware
engineerengineer
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 13
Unit TestingUnit Testing
interfaceinterface
local data structureslocal data structures
boundary conditionsboundary conditions
independent pathsindependent paths
error handling pathserror handling paths
modulemodule
to beto be
testedtested
test casestest cases
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 14
Unit Test EnvironmentUnit Test Environment
ModuleModule
stubstub stubstub
driverdriver
interfaceinterface
local data structureslocal data structures
boundary conditionsboundary conditions
independent pathsindependent paths
error handling pathserror handling paths
RESULTSRESULTS
test casestest cases
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 15
Integration Testing StrategiesIntegration Testing Strategies
Options:Options:
•• thethe ““big bangbig bang”” approachapproach
•• an incremental construction strategyan incremental construction strategy
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 16
Top Down IntegrationTop Down Integration
top module is tested withtop module is tested with
stubsstubs
stubs are replaced one atstubs are replaced one at
a time, "depth first"a time, "depth first"
as new modules are integrated,as new modules are integrated,
some subset of tests is resome subset of tests is re--runrun
AA
BB
CC
DD EE
FF GG
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 17
BottomBottom--Up IntegrationUp Integration
drivers are replaced one at adrivers are replaced one at a
time, "depth first"time, "depth first"
worker modules are grouped intoworker modules are grouped into
builds and integratedbuilds and integrated
AA
BB
CC
DD EE
FF GG
clustercluster
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 18
Sandwich TestingSandwich Testing
Top modules areTop modules are
tested with stubstested with stubs
Worker modules are grouped intoWorker modules are grouped into
builds and integratedbuilds and integrated
AA
BB
CC
DD EE
FF GG
clustercluster
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Regression testingRegression testing
to ensure that changes do not introduceto ensure that changes do not introduce
unintended behavior or additional errors.unintended behavior or additional errors.
In context of an integration test: reIn context of an integration test: re--
execution of some subset of testsexecution of some subset of tests
Any correctionAny correction --> change of software> change of software
19
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 20
Smoke TestingSmoke Testing
A common approach for creatingA common approach for creating ““daily buildsdaily builds”” for product softwarefor product software
Smoke testing steps:Smoke testing steps:
Software components that have been translated into code are inteSoftware components that have been translated into code are integratedgrated
into ainto a ““build.build.””
A build includes all data files, libraries, reusable modules, anA build includes all data files, libraries, reusable modules, andd
engineered components that are required to implement one or moreengineered components that are required to implement one or more
product functions.product functions.
A series of tests is designed to expose errors that will keep thA series of tests is designed to expose errors that will keep the builde build
from properly performing its function.from properly performing its function.
The intent should be to uncoverThe intent should be to uncover ““show stoppershow stopper”” errors that have theerrors that have the
highest likelihood of throwing the software project behind schedhighest likelihood of throwing the software project behind schedule.ule.
The build is integrated with other builds and the entire productThe build is integrated with other builds and the entire product (in its(in its
current form) is smoke tested daily.current form) is smoke tested daily.
The integration approach may be top down or bottomThe integration approach may be top down or bottom up.up.
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Identify critical modulesIdentify critical modules
Address several software requirementsAddress several software requirements
Has a high level of control (high in the programHas a high level of control (high in the program
structure)structure)
Is complex or error proneIs complex or error prone
Has definite performance requirementsHas definite performance requirements
21
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 22
ObjectObject--Oriented TestingOriented Testing
testing strategy changestesting strategy changes
the concept of thethe concept of the ‘‘unitunit’’ broadens due to encapsulationbroadens due to encapsulation
integration focuses on classes and their executionintegration focuses on classes and their execution
validation uses conventional black box methodsvalidation uses conventional black box methods
test case design draws on conventional methods, buttest case design draws on conventional methods, but
also encompasses special featuresalso encompasses special features
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 23
OOT StrategyOOT Strategy
class testing is the equivalent of unit testingclass testing is the equivalent of unit testing
operations within the class are testedoperations within the class are tested
the state behavior of the class is examinedthe state behavior of the class is examined
integration applied three different strategiesintegration applied three different strategies
threadthread--based testingbased testing——integrates the set of classesintegrates the set of classes
required to respond to one input or eventrequired to respond to one input or event
useuse--based testingbased testing——integrates the set of classes requiredintegrates the set of classes required
to respond to one use caseto respond to one use case
cluster testingcluster testing——integrates the set of classes required tointegrates the set of classes required to
demonstrate one collaborationdemonstrate one collaboration
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Validation TestingValidation Testing
Validation succeeds when software functions in aValidation succeeds when software functions in a
manner that can be reasonably expected by themanner that can be reasonably expected by the
customer.customer.
Reasonable expectation are defined in the SoftwareReasonable expectation are defined in the Software
Requirement SpecificationRequirement Specification
FunctionalFunctional
BehavioralBehavioral
PerformancePerformance
DocumentationDocumentation
UsabilityUsability ……..
Alpha/Beta testingAlpha/Beta testing
Focus is on customer usageFocus is on customer usage
24
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 25
High Order Testing:High Order Testing:
System testingSystem testingSystem testingSystem testing
Focus is on system integrationFocus is on system integration
Recovery testingRecovery testing
forces the software to fail in a variety of ways andforces the software to fail in a variety of ways and
verifies that recovery is properly performedverifies that recovery is properly performed
Automatic: reAutomatic: re--initialization, check pointing, datainitialization, check pointing, data
recovery, restartrecovery, restart
By human intervention ; meanBy human intervention ; mean--timetime--toto--repairrepair
Security testingSecurity testing
verifies that protection mechanisms built into a systemverifies that protection mechanisms built into a system
will, in fact, protect it from improper penetrationwill, in fact, protect it from improper penetration
Stress testingStress testing
executes a system in a manner that demands resourcesexecutes a system in a manner that demands resources
in abnormal quantity, frequency, or volumein abnormal quantity, frequency, or volume
Performance TestingPerformance Testing
test the runtest the run--time performance of software within thetime performance of software within the
context of an integrated systemcontext of an integrated system
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 26
Debugging:Debugging:
A Diagnostic ProcessA Diagnostic Process
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 27
The Debugging ProcessThe Debugging Process
test casestest cases
resultsresults
DebuggingDebugging
suspectedsuspected
causescauses
identifiedidentified
causescauses
correctionscorrections
regressionregression
teststests
new testnew test
casescases
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 28
Debugging EffortDebugging Effort
time requiredtime required
to diagnose theto diagnose the
symptom andsymptom and
determine thedetermine the
causecause
time requiredtime required
to correct the errorto correct the error
and conductand conduct
regression testsregression tests
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 29
Symptoms & CausesSymptoms & Causes
symptomsymptom
causecause
symptom and cause may besymptom and cause may be
geographically separatedgeographically separated
symptom may disappear whensymptom may disappear when
another problem is fixedanother problem is fixed
cause may be due to acause may be due to a
combination of noncombination of non--errorserrors
cause may be due to a systemcause may be due to a system
or compiler erroror compiler error
cause may be due tocause may be due to
assumptions that everyoneassumptions that everyone
believesbelieves
symptom may be intermittentsymptom may be intermittent
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao
Debugging tacticsDebugging tactics
Brute forceBrute force
Dump the memoryDump the memory
BacktrackingBacktracking
Start from presence of error, go backward in the code manuallyStart from presence of error, go backward in the code manually
Cause eliminationCause elimination
Cause hypothesisCause hypothesis ……
30
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 31
Consequences of BugsConsequences of Bugs
damagedamage
mildmild
annoyingannoying
disturbingdisturbing
seriousserious
extremeextreme
catastrophiccatastrophic
infectiousinfectious
Bug TypeBug Type
Bug Categories:Bug Categories: functionfunction--related bugs,related bugs,
systemsystem--related bugs, data bugs, coding bugs,related bugs, data bugs, coding bugs,
design bugs, documentation bugs, standardsdesign bugs, documentation bugs, standards
violations, etc.violations, etc.
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net
3/18/2009 S.Sreenivasa Rao 32
Debugging: Final ThoughtsDebugging: Final Thoughts
thinkthink about theabout the
symptom you're seeing.symptom you're seeing.
Use toolsUse tools (e.g., dynamic debugger) to gain(e.g., dynamic debugger) to gain
more insight.more insight.
get helpget help from someone else.from someone else.
Be absolutely sure toBe absolutely sure to conduct regression testsconduct regression tests
when you do "fix" the bug.when you do "fix" the bug.
1.1.
2.2.
3.3.
4.4.
www.jntuworld.com
www.jntuworld.com
www.jwjobs.net

More Related Content

What's hot

50 points from the book_How Google tests Software
50 points from the book_How Google tests Software50 points from the book_How Google tests Software
50 points from the book_How Google tests SoftwareShenbaga Sundar
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3Ian McDonald
 
07 Outsource To India Independent Testing
07 Outsource To India Independent Testing07 Outsource To India Independent Testing
07 Outsource To India Independent TestingoutsourceToIndia
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validationAman Adhikari
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software TestingScott Barber
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and PlanningTechWell
 
White-box Testing: When Quality Really Matters
White-box Testing: When Quality Really MattersWhite-box Testing: When Quality Really Matters
White-box Testing: When Quality Really MattersTechWell
 
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...TEST Huddle
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSrikanth Krishnamoorthy
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWJournal For Research
 
Unit II Software Testing and Quality Assurance
Unit II Software Testing and Quality AssuranceUnit II Software Testing and Quality Assurance
Unit II Software Testing and Quality AssuranceVinothkumaR Ramu
 
Software testing
Software testingSoftware testing
Software testingfatboysec
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visoniaVisoniaTechlab
 
Beginner guide-to-software-testing
Beginner guide-to-software-testingBeginner guide-to-software-testing
Beginner guide-to-software-testingbiswajit52
 
Fresher interview question for software testing (QA) manual + basic automation
Fresher interview question for software testing (QA) manual + basic automationFresher interview question for software testing (QA) manual + basic automation
Fresher interview question for software testing (QA) manual + basic automationRakesh Hansalia
 

What's hot (20)

50 points from the book_How Google tests Software
50 points from the book_How Google tests Software50 points from the book_How Google tests Software
50 points from the book_How Google tests Software
 
Dw testing
Dw testingDw testing
Dw testing
 
How google tests software
How google tests softwareHow google tests software
How google tests software
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3
 
07 Outsource To India Independent Testing
07 Outsource To India Independent Testing07 Outsource To India Independent Testing
07 Outsource To India Independent Testing
 
Mca se chapter_07_software_validation
Mca se chapter_07_software_validationMca se chapter_07_software_validation
Mca se chapter_07_software_validation
 
Approaches to Software Testing
Approaches to Software TestingApproaches to Software Testing
Approaches to Software Testing
 
Cpaior13.ppt
Cpaior13.pptCpaior13.ppt
Cpaior13.ppt
 
Essential Test Management and Planning
Essential Test Management and PlanningEssential Test Management and Planning
Essential Test Management and Planning
 
White-box Testing: When Quality Really Matters
White-box Testing: When Quality Really MattersWhite-box Testing: When Quality Really Matters
White-box Testing: When Quality Really Matters
 
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...
Thomas Kauders - Agile Test Design And Automation of a Life-Critical Medical ...
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By Srikanth
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
 
@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""
 
Unit II Software Testing and Quality Assurance
Unit II Software Testing and Quality AssuranceUnit II Software Testing and Quality Assurance
Unit II Software Testing and Quality Assurance
 
Software testing
Software testingSoftware testing
Software testing
 
Manual testing visonia
Manual testing   visoniaManual testing   visonia
Manual testing visonia
 
Beginner guide-to-software-testing
Beginner guide-to-software-testingBeginner guide-to-software-testing
Beginner guide-to-software-testing
 
Manual testing
Manual testingManual testing
Manual testing
 
Fresher interview question for software testing (QA) manual + basic automation
Fresher interview question for software testing (QA) manual + basic automationFresher interview question for software testing (QA) manual + basic automation
Fresher interview question for software testing (QA) manual + basic automation
 

Similar to Software Testing Strategies

Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Iosif Itkin
 
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...IRJET Journal
 
12 sdd lesson testing and evaluating
12 sdd lesson testing and evaluating12 sdd lesson testing and evaluating
12 sdd lesson testing and evaluatingMike Cusack
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing EssayDani Cox
 
Software techniques
Software techniquesSoftware techniques
Software techniqueshome
 
Chapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptChapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptBule Hora University
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdfPradeepaKannan6
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutionsgavhays
 
Functional and Non-functional Test automation
Functional and Non-functional Test automationFunctional and Non-functional Test automation
Functional and Non-functional Test automationDr Ganesh Iyer
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 

Similar to Software Testing Strategies (20)

Test plan
Test planTest plan
Test plan
 
Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4Foundations of Software Testing Lecture 4
Foundations of Software Testing Lecture 4
 
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...
IRJET - A Valuable and Speculative Approach to Manage the Item Testing by usi...
 
12 sdd lesson testing and evaluating
12 sdd lesson testing and evaluating12 sdd lesson testing and evaluating
12 sdd lesson testing and evaluating
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing Essay
 
Testing ppt
Testing pptTesting ppt
Testing ppt
 
Software techniques
Software techniquesSoftware techniques
Software techniques
 
Test plan
Test planTest plan
Test plan
 
Unit 2
Unit 2Unit 2
Unit 2
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
Chapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.pptChapter 4 Software Testing_Finalised_BW.ppt
Chapter 4 Software Testing_Finalised_BW.ppt
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdf
 
Testing Software Solutions
Testing Software SolutionsTesting Software Solutions
Testing Software Solutions
 
OMSOFTWARE NEW Service
OMSOFTWARE NEW ServiceOMSOFTWARE NEW Service
OMSOFTWARE NEW Service
 
Functional and Non-functional Test automation
Functional and Non-functional Test automationFunctional and Non-functional Test automation
Functional and Non-functional Test automation
 
Test plan
Test planTest plan
Test plan
 
Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Savitha_Resume
Savitha_ResumeSavitha_Resume
Savitha_Resume
 

More from Azhar Shaik

Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
SOFTWARE ENGINEERING UNIT 6 Ch22
SOFTWARE ENGINEERING UNIT 6 Ch22SOFTWARE ENGINEERING UNIT 6 Ch22
SOFTWARE ENGINEERING UNIT 6 Ch22Azhar Shaik
 
SOFTWARE ENGINEERING UNIT 6 Ch14
SOFTWARE ENGINEERING UNIT 6 Ch14SOFTWARE ENGINEERING UNIT 6 Ch14
SOFTWARE ENGINEERING UNIT 6 Ch14Azhar Shaik
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT VAzhar Shaik
 
Performing user interface design v
Performing user interface design vPerforming user interface design v
Performing user interface design vAzhar Shaik
 
S.e material2 DESIGN ENGINEERING
S.e material2 DESIGN ENGINEERINGS.e material2 DESIGN ENGINEERING
S.e material2 DESIGN ENGINEERINGAzhar Shaik
 
Unit 3 requirements engineering processes
Unit 3 requirements engineering processesUnit 3 requirements engineering processes
Unit 3 requirements engineering processesAzhar Shaik
 
Unit 3 system models
Unit 3 system modelsUnit 3 system models
Unit 3 system modelsAzhar Shaik
 
Unit 2 analysis and software requirements
Unit 2 analysis and software requirementsUnit 2 analysis and software requirements
Unit 2 analysis and software requirementsAzhar Shaik
 

More from Azhar Shaik (14)

Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Unit 7 risk
Unit 7 riskUnit 7 risk
Unit 7 risk
 
Unit 6
Unit 6Unit 6
Unit 6
 
SOFTWARE ENGINEERING UNIT 6 Ch22
SOFTWARE ENGINEERING UNIT 6 Ch22SOFTWARE ENGINEERING UNIT 6 Ch22
SOFTWARE ENGINEERING UNIT 6 Ch22
 
SOFTWARE ENGINEERING UNIT 6 Ch14
SOFTWARE ENGINEERING UNIT 6 Ch14SOFTWARE ENGINEERING UNIT 6 Ch14
SOFTWARE ENGINEERING UNIT 6 Ch14
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT V
 
Performing user interface design v
Performing user interface design vPerforming user interface design v
Performing user interface design v
 
S.e material2 DESIGN ENGINEERING
S.e material2 DESIGN ENGINEERINGS.e material2 DESIGN ENGINEERING
S.e material2 DESIGN ENGINEERING
 
Unit 4
Unit 4Unit 4
Unit 4
 
Unit 3 requirements engineering processes
Unit 3 requirements engineering processesUnit 3 requirements engineering processes
Unit 3 requirements engineering processes
 
Unit 3 system models
Unit 3 system modelsUnit 3 system models
Unit 3 system models
 
Unit 2 analysis and software requirements
Unit 2 analysis and software requirementsUnit 2 analysis and software requirements
Unit 2 analysis and software requirements
 
S.e material
S.e materialS.e material
S.e material
 
Unit 1 se
Unit 1 seUnit 1 se
Unit 1 se
 

Recently uploaded

Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 

Recently uploaded (20)

Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 

Software Testing Strategies

  • 1. 3/18/2009 S.Sreenivasa Rao 1 Chapter 13Chapter 13 Software Testing StrategiesSoftware Testing Strategies www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 2. 3/18/2009 S.Sreenivasa Rao 2 Software TestingSoftware Testing Testing is the process of exercising aTesting is the process of exercising a program with the specific intent of findingprogram with the specific intent of finding errors prior to delivery to the end user.errors prior to delivery to the end user. www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 3. 3/18/2009 S.Sreenivasa Rao Test strategy provides a road map;Test strategy provides a road map; Steps to be conductedSteps to be conducted WhenWhen How much effort, time, resourcesHow much effort, time, resources Test strategyTest strategy Test planningTest planning Test case designTest case design Test executionTest execution Resultant data collection and evaluationResultant data collection and evaluation 3 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 4. 3/18/2009 S.Sreenivasa Rao Verification and ValidationVerification and Validation V&VV&V Testing is part of V&VTesting is part of V&V Verification: Are we building the product right?Verification: Are we building the product right? Software correctly implements a specificSoftware correctly implements a specific functionfunction Validation: Are we building the right product?Validation: Are we building the right product? Software is traceable to customerSoftware is traceable to customer requirementsrequirements 4 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 5. 3/18/2009 S.Sreenivasa Rao 5 What Testing ShowsWhat Testing Shows errorserrors requirements conformancerequirements conformance performanceperformance an indicationan indication of qualityof quality www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 6. 3/18/2009 S.Sreenivasa Rao 6 Who Tests the Software?Who Tests the Software? developerdeveloper independent testerindependent tester Understands the systemUnderstands the system but, will test "gently"but, will test "gently" and, is driven by "delivery"and, is driven by "delivery" Must learn about the system,Must learn about the system, but, will attempt to break itbut, will attempt to break it and, is driven by qualityand, is driven by quality www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 7. 3/18/2009 S.Sreenivasa Rao 7 Testing StrategyTesting Strategy unit testunit test integrationintegration testtest validationvalidation testtest systemsystem testtest www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 8. 3/18/2009 S.Sreenivasa Rao Levels of Testing Client Needs Requirements Design Code Acceptance Testing System Testing Integration Testing Unit testing www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 9. 3/18/2009 S.Sreenivasa Rao RequirementRequirement --> high> high--order tests:order tests: validation test, System testvalidation test, System test DesignDesign --> Integration test> Integration test CodeCode --> unit test> unit test 9 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 10. 3/18/2009 S.Sreenivasa Rao 10 Testing StrategyTesting Strategy We begin byWe begin by ‘‘testingtesting--inin--thethe--smallsmall’’ and move towardand move toward ‘‘testingtesting--inin--thethe--largelarge’’ For conventional softwareFor conventional software The module (component) is our initial focusThe module (component) is our initial focus Integration of modules followsIntegration of modules follows For OO softwareFor OO software our focus whenour focus when ““testing in the smalltesting in the small”” changes from anchanges from an individual module (the conventional view) to an OO classindividual module (the conventional view) to an OO class that encompasses attributes and operations and impliesthat encompasses attributes and operations and implies communication and collaborationcommunication and collaboration www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 11. 3/18/2009 S.Sreenivasa Rao 11 Strategic IssuesStrategic Issues Specify product requirements in a quantifiable manner long befoSpecify product requirements in a quantifiable manner long beforere testing.testing. State testing objectives explicitly.State testing objectives explicitly. Understand the users of the software and develop a profile for eUnderstand the users of the software and develop a profile for eachach user category.user category. Develop a testing plan that emphasizesDevelop a testing plan that emphasizes ““rapid cycle testing.rapid cycle testing.”” BuildBuild ““robustrobust”” software that is designed to test itselfsoftware that is designed to test itself Use effective formal technical reviews as a filter prior to testUse effective formal technical reviews as a filter prior to testinging Conduct formal technical reviews to assess the test strategy andConduct formal technical reviews to assess the test strategy and testtest cases themselves.cases themselves. Develop a continuous improvement approach for the testingDevelop a continuous improvement approach for the testing process.process. www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 12. 3/18/2009 S.Sreenivasa Rao 12 Unit TestingUnit Testing modulemodule to beto be testedtested test casestest cases resultsresults softwaresoftware engineerengineer www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 13. 3/18/2009 S.Sreenivasa Rao 13 Unit TestingUnit Testing interfaceinterface local data structureslocal data structures boundary conditionsboundary conditions independent pathsindependent paths error handling pathserror handling paths modulemodule to beto be testedtested test casestest cases www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 14. 3/18/2009 S.Sreenivasa Rao 14 Unit Test EnvironmentUnit Test Environment ModuleModule stubstub stubstub driverdriver interfaceinterface local data structureslocal data structures boundary conditionsboundary conditions independent pathsindependent paths error handling pathserror handling paths RESULTSRESULTS test casestest cases www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 15. 3/18/2009 S.Sreenivasa Rao 15 Integration Testing StrategiesIntegration Testing Strategies Options:Options: •• thethe ““big bangbig bang”” approachapproach •• an incremental construction strategyan incremental construction strategy www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 16. 3/18/2009 S.Sreenivasa Rao 16 Top Down IntegrationTop Down Integration top module is tested withtop module is tested with stubsstubs stubs are replaced one atstubs are replaced one at a time, "depth first"a time, "depth first" as new modules are integrated,as new modules are integrated, some subset of tests is resome subset of tests is re--runrun AA BB CC DD EE FF GG www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 17. 3/18/2009 S.Sreenivasa Rao 17 BottomBottom--Up IntegrationUp Integration drivers are replaced one at adrivers are replaced one at a time, "depth first"time, "depth first" worker modules are grouped intoworker modules are grouped into builds and integratedbuilds and integrated AA BB CC DD EE FF GG clustercluster www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 18. 3/18/2009 S.Sreenivasa Rao 18 Sandwich TestingSandwich Testing Top modules areTop modules are tested with stubstested with stubs Worker modules are grouped intoWorker modules are grouped into builds and integratedbuilds and integrated AA BB CC DD EE FF GG clustercluster www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 19. 3/18/2009 S.Sreenivasa Rao Regression testingRegression testing to ensure that changes do not introduceto ensure that changes do not introduce unintended behavior or additional errors.unintended behavior or additional errors. In context of an integration test: reIn context of an integration test: re-- execution of some subset of testsexecution of some subset of tests Any correctionAny correction --> change of software> change of software 19 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 20. 3/18/2009 S.Sreenivasa Rao 20 Smoke TestingSmoke Testing A common approach for creatingA common approach for creating ““daily buildsdaily builds”” for product softwarefor product software Smoke testing steps:Smoke testing steps: Software components that have been translated into code are inteSoftware components that have been translated into code are integratedgrated into ainto a ““build.build.”” A build includes all data files, libraries, reusable modules, anA build includes all data files, libraries, reusable modules, andd engineered components that are required to implement one or moreengineered components that are required to implement one or more product functions.product functions. A series of tests is designed to expose errors that will keep thA series of tests is designed to expose errors that will keep the builde build from properly performing its function.from properly performing its function. The intent should be to uncoverThe intent should be to uncover ““show stoppershow stopper”” errors that have theerrors that have the highest likelihood of throwing the software project behind schedhighest likelihood of throwing the software project behind schedule.ule. The build is integrated with other builds and the entire productThe build is integrated with other builds and the entire product (in its(in its current form) is smoke tested daily.current form) is smoke tested daily. The integration approach may be top down or bottomThe integration approach may be top down or bottom up.up. www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 21. 3/18/2009 S.Sreenivasa Rao Identify critical modulesIdentify critical modules Address several software requirementsAddress several software requirements Has a high level of control (high in the programHas a high level of control (high in the program structure)structure) Is complex or error proneIs complex or error prone Has definite performance requirementsHas definite performance requirements 21 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 22. 3/18/2009 S.Sreenivasa Rao 22 ObjectObject--Oriented TestingOriented Testing testing strategy changestesting strategy changes the concept of thethe concept of the ‘‘unitunit’’ broadens due to encapsulationbroadens due to encapsulation integration focuses on classes and their executionintegration focuses on classes and their execution validation uses conventional black box methodsvalidation uses conventional black box methods test case design draws on conventional methods, buttest case design draws on conventional methods, but also encompasses special featuresalso encompasses special features www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 23. 3/18/2009 S.Sreenivasa Rao 23 OOT StrategyOOT Strategy class testing is the equivalent of unit testingclass testing is the equivalent of unit testing operations within the class are testedoperations within the class are tested the state behavior of the class is examinedthe state behavior of the class is examined integration applied three different strategiesintegration applied three different strategies threadthread--based testingbased testing——integrates the set of classesintegrates the set of classes required to respond to one input or eventrequired to respond to one input or event useuse--based testingbased testing——integrates the set of classes requiredintegrates the set of classes required to respond to one use caseto respond to one use case cluster testingcluster testing——integrates the set of classes required tointegrates the set of classes required to demonstrate one collaborationdemonstrate one collaboration www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 24. 3/18/2009 S.Sreenivasa Rao Validation TestingValidation Testing Validation succeeds when software functions in aValidation succeeds when software functions in a manner that can be reasonably expected by themanner that can be reasonably expected by the customer.customer. Reasonable expectation are defined in the SoftwareReasonable expectation are defined in the Software Requirement SpecificationRequirement Specification FunctionalFunctional BehavioralBehavioral PerformancePerformance DocumentationDocumentation UsabilityUsability …….. Alpha/Beta testingAlpha/Beta testing Focus is on customer usageFocus is on customer usage 24 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 25. 3/18/2009 S.Sreenivasa Rao 25 High Order Testing:High Order Testing: System testingSystem testingSystem testingSystem testing Focus is on system integrationFocus is on system integration Recovery testingRecovery testing forces the software to fail in a variety of ways andforces the software to fail in a variety of ways and verifies that recovery is properly performedverifies that recovery is properly performed Automatic: reAutomatic: re--initialization, check pointing, datainitialization, check pointing, data recovery, restartrecovery, restart By human intervention ; meanBy human intervention ; mean--timetime--toto--repairrepair Security testingSecurity testing verifies that protection mechanisms built into a systemverifies that protection mechanisms built into a system will, in fact, protect it from improper penetrationwill, in fact, protect it from improper penetration Stress testingStress testing executes a system in a manner that demands resourcesexecutes a system in a manner that demands resources in abnormal quantity, frequency, or volumein abnormal quantity, frequency, or volume Performance TestingPerformance Testing test the runtest the run--time performance of software within thetime performance of software within the context of an integrated systemcontext of an integrated system www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 26. 3/18/2009 S.Sreenivasa Rao 26 Debugging:Debugging: A Diagnostic ProcessA Diagnostic Process www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 27. 3/18/2009 S.Sreenivasa Rao 27 The Debugging ProcessThe Debugging Process test casestest cases resultsresults DebuggingDebugging suspectedsuspected causescauses identifiedidentified causescauses correctionscorrections regressionregression teststests new testnew test casescases www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 28. 3/18/2009 S.Sreenivasa Rao 28 Debugging EffortDebugging Effort time requiredtime required to diagnose theto diagnose the symptom andsymptom and determine thedetermine the causecause time requiredtime required to correct the errorto correct the error and conductand conduct regression testsregression tests www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 29. 3/18/2009 S.Sreenivasa Rao 29 Symptoms & CausesSymptoms & Causes symptomsymptom causecause symptom and cause may besymptom and cause may be geographically separatedgeographically separated symptom may disappear whensymptom may disappear when another problem is fixedanother problem is fixed cause may be due to acause may be due to a combination of noncombination of non--errorserrors cause may be due to a systemcause may be due to a system or compiler erroror compiler error cause may be due tocause may be due to assumptions that everyoneassumptions that everyone believesbelieves symptom may be intermittentsymptom may be intermittent www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 30. 3/18/2009 S.Sreenivasa Rao Debugging tacticsDebugging tactics Brute forceBrute force Dump the memoryDump the memory BacktrackingBacktracking Start from presence of error, go backward in the code manuallyStart from presence of error, go backward in the code manually Cause eliminationCause elimination Cause hypothesisCause hypothesis …… 30 www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 31. 3/18/2009 S.Sreenivasa Rao 31 Consequences of BugsConsequences of Bugs damagedamage mildmild annoyingannoying disturbingdisturbing seriousserious extremeextreme catastrophiccatastrophic infectiousinfectious Bug TypeBug Type Bug Categories:Bug Categories: functionfunction--related bugs,related bugs, systemsystem--related bugs, data bugs, coding bugs,related bugs, data bugs, coding bugs, design bugs, documentation bugs, standardsdesign bugs, documentation bugs, standards violations, etc.violations, etc. www.jntuworld.com www.jntuworld.com www.jwjobs.net
  • 32. 3/18/2009 S.Sreenivasa Rao 32 Debugging: Final ThoughtsDebugging: Final Thoughts thinkthink about theabout the symptom you're seeing.symptom you're seeing. Use toolsUse tools (e.g., dynamic debugger) to gain(e.g., dynamic debugger) to gain more insight.more insight. get helpget help from someone else.from someone else. Be absolutely sure toBe absolutely sure to conduct regression testsconduct regression tests when you do "fix" the bug.when you do "fix" the bug. 1.1. 2.2. 3.3. 4.4. www.jntuworld.com www.jntuworld.com www.jwjobs.net