SlideShare a Scribd company logo
ControlFlow Testing
Presented By
Hirra Sultan
Roll Number: 120101091
Enrollment number: 2012017740
Supervisor: Mr. Sudeep Varshney
Introduction
 Control-flow testing is a structural testing strategy that uses the
program’s control flow as a model.
 It is a testing technique that comes under white box testing.
 The entire structure, design, and code of the software have to be studied
for this type of testing.
 Often the testing method is used by developers themselves to test their
own code and design as they are very familiar with the code.
 This method is implemented with the intention to test logic of the code
so that the required results or functionalities can be achieved.
 Its applicability is mostly to relatively small programs or segments of
larger programs, thus it is mostly used for unit testing.
Outline Of Control Flow Testing
Process of control flow testing:
The basic idea behind Control Flow Testing is to select paths and
come up with the inputs (input values/test cases) to execute through
those paths. It includes the following 4 steps:
 Step 1: From the source code a control flow graph(CFG) is
created either manually or automatically (using a software).
 Step 2: A coverage target is defined over the CFG e.g., nodes,
paths, branches, edges etc.
 Step 3: Test cases are created using CFG to cover the coverage
target.
 Step 4: Execute the test cases.
 Step 5: Analyze the results and determine whether the program
is error free or has some bugs.
Control Flow Graph
The control flow graph is a graphical representation of control
structure of a program. Following notations are used for a flow
graph:
 Node: It represents one or more procedural statements.
 Edges or links: They represent the flow of control in a program.
 Decision node: A node with more than one arrow leaving is
called a decision node.
 Junction node: A node with more than one arrow entering it is
called a junction.
 Regions: Areas bounded by edges and nodes are called regions.
Cyclomatic Complexity
 Cyclomatic complexity measures the number of independent
paths through a program's source code.
 Cyclomatic complexity is computed using CFG.
 The formula used for calculating Cyclomatic complexity is
M = E − N + 2P, E = edges, N = nodes,
P = components
Or M = D + 1, D = decision node
Or M = R + 1, R = enclosed regions
Paths
 A path through a program is a sequence of statements that starts
at an entry, junction, or decision and ends at another (possible
the same), junction, decision, or exit.
 A feasible path in CFG is one which can be verified by a set of
possible inputs.
 Infeasible Path is such a path in CFG that cannot be verified by
any set of possible input values and most expensive activities of
software testing.
 An independent path is any path through the graph that
introduces at least one new set of processing statements or new
conditions.
Path Selection Criteria
 Statement Coverage: It is assumed that if all the statements of
the module are executed once, every bug will be notified.
 Decision coverage: This criterion states that one must write
enough test cases such that each decision has a true and false
outcome at least once.
 Condition coverage: In this case, one writes enough test cases
such that each condition in a decision takes on all possible
outcomes at least once.
Advantages
 It catches 50% of all the bugs caught during unit testing. That
amounts to 33% of all the bugs caught in the program.
 Experienced programmers can bypass drawing flow charts by
doing path selection on source code.
 The flow charts can even be made by an automated program
(software) and is not necessarily drawn by hand.
Disadvantages
 We’re unlikely to find spurious features that were included in the
software but were not in the requirements.
 It's unlikely to find missing paths and features if the program
and the model on which the tests are based are done by the same
person.
 Coincidental correctness, however improbably, defeats this
technique unless we can verify all intermediate calculations and
predicate values.
Control Flow Testing
Ad

More Related Content

What's hot (20)

Alpha and beta testing
Alpha and beta testingAlpha and beta testing
Alpha and beta testing
Muhammad Noman Fazil
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
Testbytes
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
ArunKumar5524
 
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
priyasoundar
 
Software design principles
Software design principlesSoftware design principles
Software design principles
Ritesh Singh
 
Component level design
Component   level designComponent   level design
Component level design
Midhula Chandren
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
university of education,Lahore
 
Testing in multiplatform environment
Testing in multiplatform environmentTesting in multiplatform environment
Testing in multiplatform environment
shivanichauhan1953
 
White Box Testing
White Box Testing White Box Testing
White Box Testing
MariamKhan120
 
Black box software testing
Black box software testingBlack box software testing
Black box software testing
Rana Muhammad Asif
 
Software testing
Software testingSoftware testing
Software testing
balamurugan.k Kalibalamurugan
 
Software Testing
Software TestingSoftware Testing
Software Testing
Mousmi Pawar
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
Edureka!
 
Black & White Box testing
Black & White Box testingBlack & White Box testing
Black & White Box testing
Mohamed Zeinelabdeen Abdelgader Farh jber
 
Symbol table in compiler Design
Symbol table in compiler DesignSymbol table in compiler Design
Symbol table in compiler Design
Kuppusamy P
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
Sandeep Kumar
 
Automation Testing Syllabus - Checklist
Automation Testing Syllabus - ChecklistAutomation Testing Syllabus - Checklist
Automation Testing Syllabus - Checklist
Sunil Kumar Gunasekaran
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
Akash Kumar Dhameja
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 
Testing web application
Testing web applicationTesting web application
Testing web application
jayashreesaravanan
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
Testbytes
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
ArunKumar5524
 
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
Software Testing - Boundary Value Analysis, Equivalent Class Partition, Decis...
priyasoundar
 
Software design principles
Software design principlesSoftware design principles
Software design principles
Ritesh Singh
 
Testing in multiplatform environment
Testing in multiplatform environmentTesting in multiplatform environment
Testing in multiplatform environment
shivanichauhan1953
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
Edureka!
 
Symbol table in compiler Design
Symbol table in compiler DesignSymbol table in compiler Design
Symbol table in compiler Design
Kuppusamy P
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
Akash Kumar Dhameja
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 

Viewers also liked (20)

Basis path testing
Basis path testingBasis path testing
Basis path testing
Hoa Le
 
Path testing
Path testingPath testing
Path testing
Mohamed Ali
 
Control Flow Analysis
Control Flow AnalysisControl Flow Analysis
Control Flow Analysis
Edgar Barbosa
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
Nishant Worah
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
Oana Feidi
 
Concept of Failure, error, fault and defect
Concept of Failure, error, fault and defectConcept of Failure, error, fault and defect
Concept of Failure, error, fault and defect
chaklee191
 
Software Fault, Error, and Failure
Software Fault, Error, and FailureSoftware Fault, Error, and Failure
Software Fault, Error, and Failure
nethisip13
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
Himanshu
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing Techniques
Kiran Kumar
 
Paper 06
Paper 06Paper 06
Paper 06
Sunil Pandey
 
An automatic test data generation for data flow
An automatic test data generation for data flowAn automatic test data generation for data flow
An automatic test data generation for data flow
WafaQKhan
 
CALIDAD ESPERA
CALIDAD ESPERACALIDAD ESPERA
CALIDAD ESPERA
German Mancheño Sanchez
 
Ab testing work flow
Ab testing work flowAb testing work flow
Ab testing work flow
Jainul Khan
 
Transactionflow
TransactionflowTransactionflow
Transactionflow
vamshi batchu
 
Code Complexity 101
Code Complexity 101Code Complexity 101
Code Complexity 101
Arun Saha
 
White box techniques
White box techniquesWhite box techniques
White box techniques
QA Guards
 
Bai05 thiet ketestcase-k-trpm@softtesting-nntu
Bai05 thiet ketestcase-k-trpm@softtesting-nntuBai05 thiet ketestcase-k-trpm@softtesting-nntu
Bai05 thiet ketestcase-k-trpm@softtesting-nntu
Van Pham
 
Measuring maintainability; software metrics explained
Measuring maintainability; software metrics explainedMeasuring maintainability; software metrics explained
Measuring maintainability; software metrics explained
Dennis de Greef
 
Programing Slicing and Its applications
Programing Slicing and Its applicationsPrograming Slicing and Its applications
Programing Slicing and Its applications
Ankur Jain
 
Kubernetes Boston — Custom High Availability of Kubernetes
Kubernetes Boston — Custom High Availability of KubernetesKubernetes Boston — Custom High Availability of Kubernetes
Kubernetes Boston — Custom High Availability of Kubernetes
Mike Splain
 
Basis path testing
Basis path testingBasis path testing
Basis path testing
Hoa Le
 
Control Flow Analysis
Control Flow AnalysisControl Flow Analysis
Control Flow Analysis
Edgar Barbosa
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
Nishant Worah
 
Whitebox testing
Whitebox testingWhitebox testing
Whitebox testing
Oana Feidi
 
Concept of Failure, error, fault and defect
Concept of Failure, error, fault and defectConcept of Failure, error, fault and defect
Concept of Failure, error, fault and defect
chaklee191
 
Software Fault, Error, and Failure
Software Fault, Error, and FailureSoftware Fault, Error, and Failure
Software Fault, Error, and Failure
nethisip13
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
Himanshu
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing Techniques
Kiran Kumar
 
An automatic test data generation for data flow
An automatic test data generation for data flowAn automatic test data generation for data flow
An automatic test data generation for data flow
WafaQKhan
 
Ab testing work flow
Ab testing work flowAb testing work flow
Ab testing work flow
Jainul Khan
 
Code Complexity 101
Code Complexity 101Code Complexity 101
Code Complexity 101
Arun Saha
 
White box techniques
White box techniquesWhite box techniques
White box techniques
QA Guards
 
Bai05 thiet ketestcase-k-trpm@softtesting-nntu
Bai05 thiet ketestcase-k-trpm@softtesting-nntuBai05 thiet ketestcase-k-trpm@softtesting-nntu
Bai05 thiet ketestcase-k-trpm@softtesting-nntu
Van Pham
 
Measuring maintainability; software metrics explained
Measuring maintainability; software metrics explainedMeasuring maintainability; software metrics explained
Measuring maintainability; software metrics explained
Dennis de Greef
 
Programing Slicing and Its applications
Programing Slicing and Its applicationsPrograming Slicing and Its applications
Programing Slicing and Its applications
Ankur Jain
 
Kubernetes Boston — Custom High Availability of Kubernetes
Kubernetes Boston — Custom High Availability of KubernetesKubernetes Boston — Custom High Availability of Kubernetes
Kubernetes Boston — Custom High Availability of Kubernetes
Mike Splain
 
Ad

Similar to Control Flow Testing (20)

St 1.6
St 1.6St 1.6
St 1.6
Gunasekhar Ravilla
 
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
mwpeexdvjgtqujwhog
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
guest8861ff
 
Software develop....
Software develop.... Software develop....
Software develop....
GCWUS
 
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTINGA WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
Journal For Research
 
Software Testing Part 3.pptx or black box tsting
Software Testing Part 3.pptx or black box tstingSoftware Testing Part 3.pptx or black box tsting
Software Testing Part 3.pptx or black box tsting
MaryamMahjabeenYouni
 
Audit
AuditAudit
Audit
Tanushree Pai
 
Software testing (2)
Software testing (2)Software testing (2)
Software testing (2)
dhanalakshmisai
 
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Parasoft .TEST, Write better C# Code Using  Data Flow Analysis Parasoft .TEST, Write better C# Code Using  Data Flow Analysis
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Engineering Software Lab
 
SE2018_Lec 19_ Software Testing
SE2018_Lec 19_ Software TestingSE2018_Lec 19_ Software Testing
SE2018_Lec 19_ Software Testing
Amr E. Mohamed
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 
Code Coverage in Theory and in practice form the DO178B perspective
Code Coverage in Theory and in practice form the DO178B perspective   Code Coverage in Theory and in practice form the DO178B perspective
Code Coverage in Theory and in practice form the DO178B perspective
Engineering Software Lab
 
Code coverage in theory and in practice form the do178 b perspective
Code coverage in theory and in practice form the do178 b perspectiveCode coverage in theory and in practice form the do178 b perspective
Code coverage in theory and in practice form the do178 b perspective
Engineering Software Lab
 
White-box testing.pptx
White-box testing.pptxWhite-box testing.pptx
White-box testing.pptx
halaalz3by
 
Software testing & its technology
Software testing & its technologySoftware testing & its technology
Software testing & its technology
Hasam Panezai
 
ISTQB Advanced Study Guide - 3
ISTQB Advanced Study Guide - 3ISTQB Advanced Study Guide - 3
ISTQB Advanced Study Guide - 3
Yogindernath Gupta
 
ISTQB Advanced Study Guide - 4
ISTQB Advanced Study Guide - 4ISTQB Advanced Study Guide - 4
ISTQB Advanced Study Guide - 4
Yogindernath Gupta
 
Chapter 8 Testing Tactics.ppt Software engineering
Chapter 8 Testing Tactics.ppt Software engineeringChapter 8 Testing Tactics.ppt Software engineering
Chapter 8 Testing Tactics.ppt Software engineering
AnasHassan52
 
Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and Technique
Sachin-QA
 
Test Case Design
Test Case DesignTest Case Design
Test Case Design
Vidya-QA
 
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
mwpeexdvjgtqujwhog
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
guest8861ff
 
Software develop....
Software develop.... Software develop....
Software develop....
GCWUS
 
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTINGA WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
A WHITE BOX TESTING TECHNIQUE IN SOFTWARE TESTING : BASIS PATH TESTING
Journal For Research
 
Software Testing Part 3.pptx or black box tsting
Software Testing Part 3.pptx or black box tstingSoftware Testing Part 3.pptx or black box tsting
Software Testing Part 3.pptx or black box tsting
MaryamMahjabeenYouni
 
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Parasoft .TEST, Write better C# Code Using  Data Flow Analysis Parasoft .TEST, Write better C# Code Using  Data Flow Analysis
Parasoft .TEST, Write better C# Code Using Data Flow Analysis
Engineering Software Lab
 
SE2018_Lec 19_ Software Testing
SE2018_Lec 19_ Software TestingSE2018_Lec 19_ Software Testing
SE2018_Lec 19_ Software Testing
Amr E. Mohamed
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 
Code Coverage in Theory and in practice form the DO178B perspective
Code Coverage in Theory and in practice form the DO178B perspective   Code Coverage in Theory and in practice form the DO178B perspective
Code Coverage in Theory and in practice form the DO178B perspective
Engineering Software Lab
 
Code coverage in theory and in practice form the do178 b perspective
Code coverage in theory and in practice form the do178 b perspectiveCode coverage in theory and in practice form the do178 b perspective
Code coverage in theory and in practice form the do178 b perspective
Engineering Software Lab
 
White-box testing.pptx
White-box testing.pptxWhite-box testing.pptx
White-box testing.pptx
halaalz3by
 
Software testing & its technology
Software testing & its technologySoftware testing & its technology
Software testing & its technology
Hasam Panezai
 
ISTQB Advanced Study Guide - 3
ISTQB Advanced Study Guide - 3ISTQB Advanced Study Guide - 3
ISTQB Advanced Study Guide - 3
Yogindernath Gupta
 
ISTQB Advanced Study Guide - 4
ISTQB Advanced Study Guide - 4ISTQB Advanced Study Guide - 4
ISTQB Advanced Study Guide - 4
Yogindernath Gupta
 
Chapter 8 Testing Tactics.ppt Software engineering
Chapter 8 Testing Tactics.ppt Software engineeringChapter 8 Testing Tactics.ppt Software engineering
Chapter 8 Testing Tactics.ppt Software engineering
AnasHassan52
 
Test Case Design and Technique
Test Case Design and TechniqueTest Case Design and Technique
Test Case Design and Technique
Sachin-QA
 
Test Case Design
Test Case DesignTest Case Design
Test Case Design
Vidya-QA
 
Ad

More from Hirra Sultan (8)

Processes
ProcessesProcesses
Processes
Hirra Sultan
 
report
reportreport
report
Hirra Sultan
 
Presentation
PresentationPresentation
Presentation
Hirra Sultan
 
Superconductors And their Applications
Superconductors And their ApplicationsSuperconductors And their Applications
Superconductors And their Applications
Hirra Sultan
 
Attribute oriented analysis
Attribute oriented analysisAttribute oriented analysis
Attribute oriented analysis
Hirra Sultan
 
Monopolistic Competition
Monopolistic CompetitionMonopolistic Competition
Monopolistic Competition
Hirra Sultan
 
Inheritance in oops
Inheritance in oopsInheritance in oops
Inheritance in oops
Hirra Sultan
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)
Hirra Sultan
 
Superconductors And their Applications
Superconductors And their ApplicationsSuperconductors And their Applications
Superconductors And their Applications
Hirra Sultan
 
Attribute oriented analysis
Attribute oriented analysisAttribute oriented analysis
Attribute oriented analysis
Hirra Sultan
 
Monopolistic Competition
Monopolistic CompetitionMonopolistic Competition
Monopolistic Competition
Hirra Sultan
 
Inheritance in oops
Inheritance in oopsInheritance in oops
Inheritance in oops
Hirra Sultan
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)
Hirra Sultan
 

Recently uploaded (20)

Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 

Control Flow Testing

  • 1. ControlFlow Testing Presented By Hirra Sultan Roll Number: 120101091 Enrollment number: 2012017740 Supervisor: Mr. Sudeep Varshney
  • 2. Introduction  Control-flow testing is a structural testing strategy that uses the program’s control flow as a model.  It is a testing technique that comes under white box testing.  The entire structure, design, and code of the software have to be studied for this type of testing.  Often the testing method is used by developers themselves to test their own code and design as they are very familiar with the code.  This method is implemented with the intention to test logic of the code so that the required results or functionalities can be achieved.  Its applicability is mostly to relatively small programs or segments of larger programs, thus it is mostly used for unit testing.
  • 3. Outline Of Control Flow Testing
  • 4. Process of control flow testing: The basic idea behind Control Flow Testing is to select paths and come up with the inputs (input values/test cases) to execute through those paths. It includes the following 4 steps:  Step 1: From the source code a control flow graph(CFG) is created either manually or automatically (using a software).  Step 2: A coverage target is defined over the CFG e.g., nodes, paths, branches, edges etc.  Step 3: Test cases are created using CFG to cover the coverage target.  Step 4: Execute the test cases.  Step 5: Analyze the results and determine whether the program is error free or has some bugs.
  • 5. Control Flow Graph The control flow graph is a graphical representation of control structure of a program. Following notations are used for a flow graph:  Node: It represents one or more procedural statements.  Edges or links: They represent the flow of control in a program.  Decision node: A node with more than one arrow leaving is called a decision node.  Junction node: A node with more than one arrow entering it is called a junction.  Regions: Areas bounded by edges and nodes are called regions.
  • 6. Cyclomatic Complexity  Cyclomatic complexity measures the number of independent paths through a program's source code.  Cyclomatic complexity is computed using CFG.  The formula used for calculating Cyclomatic complexity is M = E − N + 2P, E = edges, N = nodes, P = components Or M = D + 1, D = decision node Or M = R + 1, R = enclosed regions
  • 7. Paths  A path through a program is a sequence of statements that starts at an entry, junction, or decision and ends at another (possible the same), junction, decision, or exit.  A feasible path in CFG is one which can be verified by a set of possible inputs.  Infeasible Path is such a path in CFG that cannot be verified by any set of possible input values and most expensive activities of software testing.  An independent path is any path through the graph that introduces at least one new set of processing statements or new conditions.
  • 8. Path Selection Criteria  Statement Coverage: It is assumed that if all the statements of the module are executed once, every bug will be notified.  Decision coverage: This criterion states that one must write enough test cases such that each decision has a true and false outcome at least once.  Condition coverage: In this case, one writes enough test cases such that each condition in a decision takes on all possible outcomes at least once.
  • 9. Advantages  It catches 50% of all the bugs caught during unit testing. That amounts to 33% of all the bugs caught in the program.  Experienced programmers can bypass drawing flow charts by doing path selection on source code.  The flow charts can even be made by an automated program (software) and is not necessarily drawn by hand.
  • 10. Disadvantages  We’re unlikely to find spurious features that were included in the software but were not in the requirements.  It's unlikely to find missing paths and features if the program and the model on which the tests are based are done by the same person.  Coincidental correctness, however improbably, defeats this technique unless we can verify all intermediate calculations and predicate values.