SlideShare a Scribd company logo
Test Strategies for
Conventional Software
2
Unit Testing
• Focuses testing on the function or software module
• Concentrates on the internal processing logic and data structures
• Is simplified when a module is designed with high cohesion
– Reduces the number of test cases
– Allows errors to be more easily predicted and uncovered
• Concentrates on critical modules and those with high cyclomatic
complexity when testing resources are limited
3
Targets for Unit Test Cases
• Module interface
– Ensure that information flows properly into and out of the module
• Local data structures
– Ensure that data stored temporarily maintains its integrity during all steps
in an algorithm execution
• Boundary conditions
– Ensure that the module operates properly at boundary values established
to limit or restrict processing
• Independent paths (basis paths)
– Paths are exercised to ensure that all statements in a module have been
executed at least once
• Error handling paths
– Ensure that the algorithms respond correctly to specific error conditions
4
Common Computational Errors
in Execution Paths
• Misunderstood or incorrect arithmetic precedence
• Mixed mode operations (e.g., int, float, char)
• Incorrect initialization of values
• Precision inaccuracy and round-off errors
• Incorrect symbolic representation of an expression (int vs. float)
5
Other Errors to Uncover
• Comparison of different data types
• Incorrect logical operators or precedence
• Expectation of equality when precision error makes equality unlikely
(using == with float types)
• Incorrect comparison of variables
• Improper or nonexistent loop termination
• Failure to exit when divergent iteration is encountered
• Improperly modified loop variables
• Boundary value violations
6
Problems to uncover in
Error Handling
• Error description is unintelligible or ambiguous
• Error noted does not correspond to error encountered
• Error condition causes operating system intervention prior to error
handling
• Exception condition processing is incorrect
• Error description does not provide enough information to assist in the
location of the cause of the error
7
Drivers and Stubs for
Unit Testing
• Driver
– A simple main program that accepts test case data, passes such data to the
component being tested, and prints the returned results
• Stubs
– Serve to replace modules that are subordinate to (called by) the
component to be tested
– It uses the module’s exact interface, may do minimal data manipulation,
provides verification of entry, and returns control to the module
undergoing testing
• Drivers and stubs both represent overhead
– Both must be written but don’t constitute part of the installed software
product

More Related Content

PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Software testing strategies And its types
MITULJAMANG
 
PPTX
Software Testing Strategies
Alpana Bhaskar
 
DOCX
Softwaretestingstrategies
saieswar19
 
PPTX
Fundamentals of software part 1
Siddharth Sharma
 
PPT
software testing
Mayank Gupta
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Software testing strategies And its types
MITULJAMANG
 
Software Testing Strategies
Alpana Bhaskar
 
Softwaretestingstrategies
saieswar19
 
Fundamentals of software part 1
Siddharth Sharma
 
software testing
Mayank Gupta
 

What's hot (20)

PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Software testing & its technology
Hasam Panezai
 
PPT
Software Quality Assurance
Tofazzal Ahmed
 
PPT
Software engineering Testing technique,test case,test suit design
Maitree Patel
 
PPTX
System testing
KarthigaGunasekaran1
 
PPTX
System testing
MeenakshiK19
 
PPTX
System testing
Mani Kanth
 
PDF
Mt s5 levels
TestingGeeks
 
PPT
Unit iv-testing-pune-university-sres-coe
Hitesh Mohapatra
 
PPTX
Regression and performance testing
Himanshu
 
PPTX
Automated visual-regression-testing (1)
Sriram Angajala
 
PPTX
System testing
rajshreemuthiah
 
PPTX
Object oriented testing
Haris Jamil
 
PPTX
Unit 4 testing
TharuniDiddekunta
 
PPT
Chapter 14 software testing techniques
SHREEHARI WADAWADAGI
 
PPT
Mining Performance Regression Testing Repositories for Automated Performance ...
SAIL_QU
 
PDF
Integration testing complete overview
TestingXperts
 
DOC
Unit 6 final
sietkcse
 
PPT
Data validation option
maheshwarpoloju
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Software testing & its technology
Hasam Panezai
 
Software Quality Assurance
Tofazzal Ahmed
 
Software engineering Testing technique,test case,test suit design
Maitree Patel
 
System testing
KarthigaGunasekaran1
 
System testing
MeenakshiK19
 
System testing
Mani Kanth
 
Mt s5 levels
TestingGeeks
 
Unit iv-testing-pune-university-sres-coe
Hitesh Mohapatra
 
Regression and performance testing
Himanshu
 
Automated visual-regression-testing (1)
Sriram Angajala
 
System testing
rajshreemuthiah
 
Object oriented testing
Haris Jamil
 
Unit 4 testing
TharuniDiddekunta
 
Chapter 14 software testing techniques
SHREEHARI WADAWADAGI
 
Mining Performance Regression Testing Repositories for Automated Performance ...
SAIL_QU
 
Integration testing complete overview
TestingXperts
 
Unit 6 final
sietkcse
 
Data validation option
maheshwarpoloju
 
Ad

Similar to Fundamentals of Software Engineering (20)

PPT
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
PPTX
Testing strategies part -1
Divya Tiwari
 
PPTX
Software testing lecture software engineering
aabd9934
 
PDF
Software Testing.pdf
ManojKumar533913
 
PPTX
UNIT TESTING.pptx
DrTThendralCompSci
 
PPT
Software testing part
Preeti Mishra
 
PPT
testing strategies and tactics
Preeti Mishra
 
PDF
Module V - Software Testing Strategies.pdf
adhithanr
 
PDF
Architecting for the cloud storage build test
Len Bass
 
PPTX
Application and Website Security -- Designer Edition: Using Formal Specificat...
Daniel Owens
 
PPT
Unit 4 chapter 22 - testing strategies.ppt
RajaShekar963644
 
PPTX
Softwareengineering-5-3-Testing_conven_softw.pptx
rnscreation20
 
ODP
Software Risk Analysis
Brett Leonard
 
PDF
Integration and System Testing SE Unit-4 Part-4.pdf
iron57441
 
PPTX
Software_Testing_Overview.pptx
JayPrakash255
 
PDF
Testing and Deployment - Full Stack Deep Learning
Sergey Karayev
 
PPTX
Testing strategies -2
Divya Tiwari
 
PPTX
System Simulation and Modelling with types and Event Scheduling
BootNeck1
 
PPT
Performance Testing Overview
James Venetsanakos
 
PDF
Agile Software Testing the Agilogy Way
Jordi Pradel
 
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
Testing strategies part -1
Divya Tiwari
 
Software testing lecture software engineering
aabd9934
 
Software Testing.pdf
ManojKumar533913
 
UNIT TESTING.pptx
DrTThendralCompSci
 
Software testing part
Preeti Mishra
 
testing strategies and tactics
Preeti Mishra
 
Module V - Software Testing Strategies.pdf
adhithanr
 
Architecting for the cloud storage build test
Len Bass
 
Application and Website Security -- Designer Edition: Using Formal Specificat...
Daniel Owens
 
Unit 4 chapter 22 - testing strategies.ppt
RajaShekar963644
 
Softwareengineering-5-3-Testing_conven_softw.pptx
rnscreation20
 
Software Risk Analysis
Brett Leonard
 
Integration and System Testing SE Unit-4 Part-4.pdf
iron57441
 
Software_Testing_Overview.pptx
JayPrakash255
 
Testing and Deployment - Full Stack Deep Learning
Sergey Karayev
 
Testing strategies -2
Divya Tiwari
 
System Simulation and Modelling with types and Event Scheduling
BootNeck1
 
Performance Testing Overview
James Venetsanakos
 
Agile Software Testing the Agilogy Way
Jordi Pradel
 
Ad

More from Madhar Khan Pathan (18)

PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPT
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Fundamentals of Software Engineering
Madhar Khan Pathan
 
PPTX
Generic process model
Madhar Khan Pathan
 
PPTX
Software Myths
Madhar Khan Pathan
 
PPTX
Introduction to Software Engineering
Madhar Khan Pathan
 
PPTX
Software applications and challenges
Madhar Khan Pathan
 
PPTX
Introduction to software
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Fundamentals of Software Engineering
Madhar Khan Pathan
 
Generic process model
Madhar Khan Pathan
 
Software Myths
Madhar Khan Pathan
 
Introduction to Software Engineering
Madhar Khan Pathan
 
Software applications and challenges
Madhar Khan Pathan
 
Introduction to software
Madhar Khan Pathan
 

Recently uploaded (20)

PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PDF
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
PDF
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
PDF
MiniTool Power Data Recovery Crack New Pre Activated Version Latest 2025
imang66g
 
PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PPT
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PDF
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
PDF
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PDF
49785682629390197565_LRN3014_Migrating_the_Beast.pdf
Abilash868456
 
DOCX
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
PDF
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
PPTX
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
PDF
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
PPTX
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PDF
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
MiniTool Power Data Recovery Crack New Pre Activated Version Latest 2025
imang66g
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
Presentation about variables and constant.pptx
kr2589474
 
49785682629390197565_LRN3014_Migrating_the_Beast.pdf
Abilash868456
 
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
slidesgo-unlocking-the-code-the-dynamic-dance-of-variables-and-constants-2024...
kr2589474
 
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 

Fundamentals of Software Engineering

  • 2. 2 Unit Testing • Focuses testing on the function or software module • Concentrates on the internal processing logic and data structures • Is simplified when a module is designed with high cohesion – Reduces the number of test cases – Allows errors to be more easily predicted and uncovered • Concentrates on critical modules and those with high cyclomatic complexity when testing resources are limited
  • 3. 3 Targets for Unit Test Cases • Module interface – Ensure that information flows properly into and out of the module • Local data structures – Ensure that data stored temporarily maintains its integrity during all steps in an algorithm execution • Boundary conditions – Ensure that the module operates properly at boundary values established to limit or restrict processing • Independent paths (basis paths) – Paths are exercised to ensure that all statements in a module have been executed at least once • Error handling paths – Ensure that the algorithms respond correctly to specific error conditions
  • 4. 4 Common Computational Errors in Execution Paths • Misunderstood or incorrect arithmetic precedence • Mixed mode operations (e.g., int, float, char) • Incorrect initialization of values • Precision inaccuracy and round-off errors • Incorrect symbolic representation of an expression (int vs. float)
  • 5. 5 Other Errors to Uncover • Comparison of different data types • Incorrect logical operators or precedence • Expectation of equality when precision error makes equality unlikely (using == with float types) • Incorrect comparison of variables • Improper or nonexistent loop termination • Failure to exit when divergent iteration is encountered • Improperly modified loop variables • Boundary value violations
  • 6. 6 Problems to uncover in Error Handling • Error description is unintelligible or ambiguous • Error noted does not correspond to error encountered • Error condition causes operating system intervention prior to error handling • Exception condition processing is incorrect • Error description does not provide enough information to assist in the location of the cause of the error
  • 7. 7 Drivers and Stubs for Unit Testing • Driver – A simple main program that accepts test case data, passes such data to the component being tested, and prints the returned results • Stubs – Serve to replace modules that are subordinate to (called by) the component to be tested – It uses the module’s exact interface, may do minimal data manipulation, provides verification of entry, and returns control to the module undergoing testing • Drivers and stubs both represent overhead – Both must be written but don’t constitute part of the installed software product