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
PPT
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Software testing strategies And its types
PPTX
Software Testing Strategies
DOCX
Softwaretestingstrategies
PPTX
Fundamentals of software part 1
PPT
software testing
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Software testing strategies And its types
Software Testing Strategies
Softwaretestingstrategies
Fundamentals of software part 1
software testing

What's hot (20)

PPTX
Fundamentals of Software Engineering
PPT
Software testing & its technology
PPT
Software Quality Assurance
PPT
Software engineering Testing technique,test case,test suit design
PPTX
System testing
PPTX
System testing
PPTX
System testing
PDF
Mt s5 levels
PPT
Unit iv-testing-pune-university-sres-coe
PPTX
Regression and performance testing
PPTX
Automated visual-regression-testing (1)
PPTX
System testing
PPTX
Object oriented testing
PPTX
Unit 4 testing
PPT
Chapter 14 software testing techniques
PPT
Mining Performance Regression Testing Repositories for Automated Performance ...
PDF
Integration testing complete overview
DOC
Unit 6 final
PPT
Data validation option
Fundamentals of Software Engineering
Software testing & its technology
Software Quality Assurance
Software engineering Testing technique,test case,test suit design
System testing
System testing
System testing
Mt s5 levels
Unit iv-testing-pune-university-sres-coe
Regression and performance testing
Automated visual-regression-testing (1)
System testing
Object oriented testing
Unit 4 testing
Chapter 14 software testing techniques
Mining Performance Regression Testing Repositories for Automated Performance ...
Integration testing complete overview
Unit 6 final
Data validation option
Ad

Similar to Fundamentals of Software Engineering (20)

PPT
Chapter 13 software testing strategies
PPTX
Testing strategies part -1
PPTX
Software testing lecture software engineering
PPT
SOFTWARE ENGINEERING unit4-1 CLASS notes in pptx 2nd year
PDF
Software Testing.pdf
PPTX
UNIT TESTING.pptx
PPT
4.3_Unit Testing.ppt gfdfghhhhhhhhhhhhh
PPT
Software testing part
PPT
testing strategies and tactics
PDF
Module V - Software Testing Strategies.pdf
PDF
Architecting for the cloud storage build test
PPTX
Application and Website Security -- Designer Edition: Using Formal Specificat...
PPT
Unit 4 chapter 22 - testing strategies.ppt
PPTX
Softwareengineering-5-3-Testing_conven_softw.pptx
ODP
Software Risk Analysis
PDF
Integration and System Testing SE Unit-4 Part-4.pdf
PPTX
Software_Testing_Overview.pptx
PDF
Testing and Deployment - Full Stack Deep Learning
PPTX
Testing strategies -2
PPTX
System Simulation and Modelling with types and Event Scheduling
Chapter 13 software testing strategies
Testing strategies part -1
Software testing lecture software engineering
SOFTWARE ENGINEERING unit4-1 CLASS notes in pptx 2nd year
Software Testing.pdf
UNIT TESTING.pptx
4.3_Unit Testing.ppt gfdfghhhhhhhhhhhhh
Software testing part
testing strategies and tactics
Module V - Software Testing Strategies.pdf
Architecting for the cloud storage build test
Application and Website Security -- Designer Edition: Using Formal Specificat...
Unit 4 chapter 22 - testing strategies.ppt
Softwareengineering-5-3-Testing_conven_softw.pptx
Software Risk Analysis
Integration and System Testing SE Unit-4 Part-4.pdf
Software_Testing_Overview.pptx
Testing and Deployment - Full Stack Deep Learning
Testing strategies -2
System Simulation and Modelling with types and Event Scheduling
Ad

More from Madhar Khan Pathan (18)

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

Recently uploaded (20)

PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Digital Strategies for Manufacturing Companies
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
System and Network Administraation Chapter 3
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Introduction to Artificial Intelligence
PPTX
Online Work Permit System for Fast Permit Processing
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
medical staffing services at VALiNTRY
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
Nekopoi APK 2025 free lastest update
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
Odoo Companies in India – Driving Business Transformation.pdf
Digital Strategies for Manufacturing Companies
Which alternative to Crystal Reports is best for small or large businesses.pdf
System and Network Administraation Chapter 3
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Introduction to Artificial Intelligence
Online Work Permit System for Fast Permit Processing
How Creative Agencies Leverage Project Management Software.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
medical staffing services at VALiNTRY
Softaken Excel to vCard Converter Software.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Understanding Forklifts - TECH EHS Solution
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
ManageIQ - Sprint 268 Review - Slide Deck
Nekopoi APK 2025 free lastest update
Adobe Illustrator 28.6 Crack My Vision of Vector Design
VVF-Customer-Presentation2025-Ver1.9.pptx
Upgrade and Innovation Strategies for SAP ERP Customers

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