SlideShare a Scribd company logo
1 of 15
Software Slicing & Testing
Taegeon Lee
t76lee@uwaterloo.ca
Advisor: Prof. Doo-Hwan Bae
bae@se.kaist.ac.kr
Teaching Assistant: Jiyoung Song
jysong@se.kaist.ac.kr
Slicing
• AnOverview ofProgramingSlicing
• Static andDynamicSlicingComparison
• ProgramDependenceGraph
2/14
Slicing
Introduction Background Overall Approach Methodology Experiments Results Conclusion Discussion
 Programslicingis atechniquefor simplifyingprogramsby focusing on
selectedaspectsof semantics.
 Static,dynamic,conditioned,andamorphous slicingare mainforms of slice.
 Staticslicing
Constructedbydeleting irrelevant partsoftheprogram
Nothingaboutinput
Program dependencegraph canbeused
 Dynamicslicing
Constructaslicewhichexploitedtheinformationavailable abouttheinputwhichcaused
theprogramtogowrong
 There are manyapplicationssuch as debugging,cohesion measurement,
comprehension,maintenance andso on.
3/14Software Slicing & Testing
Static and DynamicSlicingComparison
 StaticSlicing
 Considersallpossiblepaths
 Slicingcostischeaper
 Staticallyavailableinformationonly
 Noassumptionsmadeoninput
 Computedsliceis ingeneralinaccurate
 Identifyingminimalslicesisanundecidableproblem
 Resultsmaynotbeuseful
 DynamicSlicing
 Onlyconsidersaspecifiedexecuted path
 Slicesizeissmaller
 Computedonagiveninput
 Usefulforapplicationssuchasdebuggingandtesting
4/14Software Slicing & Testing
Slicing
 Program dependence graph
 Statements are nodes, and data and control dependencies are the
edges
 Data dependence graph
Describes in the assignment statements the left value to the right value
dependence relationship
 Control dependence graph
Describes in a program the conditional statements and circular statements with
the statements embedded in them, their control relationship
Statements in the branches of if or while statements are control dependent on
the control predicate
5/14Software Slicing & Testing
Program DependenceGraph
6/14Software Slicing & Testing
Cited from http://slideplayer.com/slide/4238936/
Testing
• AnOverview ofWhite BoxTesting
• AnOverview ofBlackBoxTesting
• White andBlackBoxTestingComparison
7/14
 White box testing is the testing of a software solution’s
internal coding and infrastructure
 Focuses on security and improves design and usability
White Box Testing
8/14Software Slicing & Testing
Fig) Like see-through box concept
Cited from https://global.rakuten.com/ko/store/hanjo/item/10012725/
 Internal security holes
 Broken or poorly structured paths in the coding process
 The flow of specific inputs through the code
 Expected output
 The functionality of conditional loops
 Testing of each statement, object, and function on an individual
basis
White Box Verification
9/14Software Slicing & Testing
White BoxTesting
10/14Software Slicing & Testing
White Box Testing
Code coverage Analysis
Branch Coverage Statement Coverage
There are the other coverages such as condition, multi condition, path, function…
;however, branch and statement will cover 80-90% which is sufficient.
 It identifies areas of a program that are not exercised by a set of test
cases.
 Once gap are identified, you create test cases to verify untested
parts of code, thereby increase the quality of the software product.
 Branch coverage checks every possible path ( if-else and other
conditional loops ) of a software application.
 Statement coverage requires every possible statement in the code
to be tested at least once during the testing process.
Code Coverage Analysis
11/14Software Slicing & Testing
 Functionality of the software under test is checked without looking
at the internal code structure, implementation details or knowledge
of internal paths of the software.
 Based entirely on the software requirements and specifications
Black Box Testing
12/14Software Slicing & Testing
Cited from https://imgur.com/gallery/EL0jZ8e
Not being able to see the inner workings of the
Software so that only the end-user experience can
be tested
 Therefore, you can test these applications by just focusing on the
inputs and outputs without knowing their internal code
implementation.
 There are three types of black box testing.
 Functional testing
 Non-functional testing
 Regression testing
Black Box Testing
13/14Software Slicing & Testing
 White box testing (which is unit testing) validates internal structure
and working of your software code.
 The main focus of black box testing is validation of functional
requirements.
 Black box testing gives abstraction from code and focuses testing
effort on the software system behavior.
White and Black Box Testing Comparison
14/14Software Slicing & Testing
Thank You.
24th May, 2018
t76lee@uwaterloo.ca

More Related Content

What's hot

What's hot (20)

Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
The Art Of Debugging
The Art Of DebuggingThe Art Of Debugging
The Art Of Debugging
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
software quality
software qualitysoftware quality
software quality
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Risk management in software engineering
Risk management in software engineeringRisk management in software engineering
Risk management in software engineering
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Debugging
DebuggingDebugging
Debugging
 
Software Project Management - Staffing
Software Project Management - StaffingSoftware Project Management - Staffing
Software Project Management - Staffing
 
Introduction to Software Quality & its' Challenges
Introduction to Software Quality & its' ChallengesIntroduction to Software Quality & its' Challenges
Introduction to Software Quality & its' Challenges
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Software Reliability
Software ReliabilitySoftware Reliability
Software Reliability
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
Software testing
Software testingSoftware testing
Software testing
 
Black box & white-box testing technique
Black box & white-box testing techniqueBlack box & white-box testing technique
Black box & white-box testing technique
 
Software testing axioms
Software testing axiomsSoftware testing axioms
Software testing axioms
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Building Aneka clouds.ppt
Building Aneka clouds.pptBuilding Aneka clouds.ppt
Building Aneka clouds.ppt
 
System testing
System testingSystem testing
System testing
 

Similar to Slicing and testing

Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-conceptsmedsherb
 
Learn software testing with tech partnerz 3
Learn software testing with tech partnerz 3Learn software testing with tech partnerz 3
Learn software testing with tech partnerz 3Techpartnerz
 
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
 
ST-Magnitude of three Dimensional Skill Set
ST-Magnitude of three Dimensional Skill SetST-Magnitude of three Dimensional Skill Set
ST-Magnitude of three Dimensional Skill SetAmit Bhardwaj
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET Journal
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basicRohit Singh
 
Program slicing by kumari nutan
Program slicing by kumari nutanProgram slicing by kumari nutan
Program slicing by kumari nutankumari nutan
 
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis Overview
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis OverviewSAP NetWeaver Application Server Add-On for Code Vulnerability Analysis Overview
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis OverviewSAP Technology
 
SOFTWARE TESTING.pptx
SOFTWARE TESTING.pptxSOFTWARE TESTING.pptx
SOFTWARE TESTING.pptxssrpr
 
Defect effort prediction models in software
Defect effort prediction models in softwareDefect effort prediction models in software
Defect effort prediction models in softwareIAEME Publication
 
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGFROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGijseajournal
 
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud ComputingFrom the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud Computingijseajournal
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdfPradeepaKannan6
 

Similar to Slicing and testing (20)

Testing ppt
Testing pptTesting ppt
Testing ppt
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 
Testing overview
Testing overviewTesting overview
Testing overview
 
Learn software testing with tech partnerz 3
Learn software testing with tech partnerz 3Learn software testing with tech partnerz 3
Learn software testing with tech partnerz 3
 
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...
 
ST-Magnitude of three Dimensional Skill Set
ST-Magnitude of three Dimensional Skill SetST-Magnitude of three Dimensional Skill Set
ST-Magnitude of three Dimensional Skill Set
 
Test plan
Test planTest plan
Test plan
 
Unit 4- Testing.pptx
Unit 4- Testing.pptxUnit 4- Testing.pptx
Unit 4- Testing.pptx
 
Ieee829mtp
Ieee829mtpIeee829mtp
Ieee829mtp
 
IRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLCIRJET- Research Study on Testing Mantle in SDLC
IRJET- Research Study on Testing Mantle in SDLC
 
Chapter 16
Chapter 16Chapter 16
Chapter 16
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Program slicing by kumari nutan
Program slicing by kumari nutanProgram slicing by kumari nutan
Program slicing by kumari nutan
 
Ieee829mtp
Ieee829mtpIeee829mtp
Ieee829mtp
 
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis Overview
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis OverviewSAP NetWeaver Application Server Add-On for Code Vulnerability Analysis Overview
SAP NetWeaver Application Server Add-On for Code Vulnerability Analysis Overview
 
SOFTWARE TESTING.pptx
SOFTWARE TESTING.pptxSOFTWARE TESTING.pptx
SOFTWARE TESTING.pptx
 
Defect effort prediction models in software
Defect effort prediction models in softwareDefect effort prediction models in software
Defect effort prediction models in software
 
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTINGFROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
FROM THE ART OF SOFTWARE TESTING TO TEST-AS-A-SERVICE IN CLOUD COMPUTING
 
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud ComputingFrom the Art of Software Testing to Test-as-a-Service in Cloud Computing
From the Art of Software Testing to Test-as-a-Service in Cloud Computing
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdf
 

Recently uploaded

Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxvipinkmenon1
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 

Recently uploaded (20)

Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptx
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 

Slicing and testing

  • 1. Software Slicing & Testing Taegeon Lee t76lee@uwaterloo.ca Advisor: Prof. Doo-Hwan Bae bae@se.kaist.ac.kr Teaching Assistant: Jiyoung Song jysong@se.kaist.ac.kr
  • 2. Slicing • AnOverview ofProgramingSlicing • Static andDynamicSlicingComparison • ProgramDependenceGraph 2/14
  • 3. Slicing Introduction Background Overall Approach Methodology Experiments Results Conclusion Discussion  Programslicingis atechniquefor simplifyingprogramsby focusing on selectedaspectsof semantics.  Static,dynamic,conditioned,andamorphous slicingare mainforms of slice.  Staticslicing Constructedbydeleting irrelevant partsoftheprogram Nothingaboutinput Program dependencegraph canbeused  Dynamicslicing Constructaslicewhichexploitedtheinformationavailable abouttheinputwhichcaused theprogramtogowrong  There are manyapplicationssuch as debugging,cohesion measurement, comprehension,maintenance andso on. 3/14Software Slicing & Testing
  • 4. Static and DynamicSlicingComparison  StaticSlicing  Considersallpossiblepaths  Slicingcostischeaper  Staticallyavailableinformationonly  Noassumptionsmadeoninput  Computedsliceis ingeneralinaccurate  Identifyingminimalslicesisanundecidableproblem  Resultsmaynotbeuseful  DynamicSlicing  Onlyconsidersaspecifiedexecuted path  Slicesizeissmaller  Computedonagiveninput  Usefulforapplicationssuchasdebuggingandtesting 4/14Software Slicing & Testing
  • 5. Slicing  Program dependence graph  Statements are nodes, and data and control dependencies are the edges  Data dependence graph Describes in the assignment statements the left value to the right value dependence relationship  Control dependence graph Describes in a program the conditional statements and circular statements with the statements embedded in them, their control relationship Statements in the branches of if or while statements are control dependent on the control predicate 5/14Software Slicing & Testing
  • 6. Program DependenceGraph 6/14Software Slicing & Testing Cited from http://slideplayer.com/slide/4238936/
  • 7. Testing • AnOverview ofWhite BoxTesting • AnOverview ofBlackBoxTesting • White andBlackBoxTestingComparison 7/14
  • 8.  White box testing is the testing of a software solution’s internal coding and infrastructure  Focuses on security and improves design and usability White Box Testing 8/14Software Slicing & Testing Fig) Like see-through box concept Cited from https://global.rakuten.com/ko/store/hanjo/item/10012725/
  • 9.  Internal security holes  Broken or poorly structured paths in the coding process  The flow of specific inputs through the code  Expected output  The functionality of conditional loops  Testing of each statement, object, and function on an individual basis White Box Verification 9/14Software Slicing & Testing
  • 10. White BoxTesting 10/14Software Slicing & Testing White Box Testing Code coverage Analysis Branch Coverage Statement Coverage There are the other coverages such as condition, multi condition, path, function… ;however, branch and statement will cover 80-90% which is sufficient.
  • 11.  It identifies areas of a program that are not exercised by a set of test cases.  Once gap are identified, you create test cases to verify untested parts of code, thereby increase the quality of the software product.  Branch coverage checks every possible path ( if-else and other conditional loops ) of a software application.  Statement coverage requires every possible statement in the code to be tested at least once during the testing process. Code Coverage Analysis 11/14Software Slicing & Testing
  • 12.  Functionality of the software under test is checked without looking at the internal code structure, implementation details or knowledge of internal paths of the software.  Based entirely on the software requirements and specifications Black Box Testing 12/14Software Slicing & Testing Cited from https://imgur.com/gallery/EL0jZ8e Not being able to see the inner workings of the Software so that only the end-user experience can be tested
  • 13.  Therefore, you can test these applications by just focusing on the inputs and outputs without knowing their internal code implementation.  There are three types of black box testing.  Functional testing  Non-functional testing  Regression testing Black Box Testing 13/14Software Slicing & Testing
  • 14.  White box testing (which is unit testing) validates internal structure and working of your software code.  The main focus of black box testing is validation of functional requirements.  Black box testing gives abstraction from code and focuses testing effort on the software system behavior. White and Black Box Testing Comparison 14/14Software Slicing & Testing
  • 15. Thank You. 24th May, 2018 t76lee@uwaterloo.ca

Editor's Notes

  1. Static slicing & dynamic slicing Control dependence graph Data dependence graph There is partial analysis , measurement : slice size , execution time, analysis time Partial analysis has a value between static and dynamic
  2. Dynamic Slicing Static Slicing Program dependence graph Control dependence graph Data dependence graph
  3. Static slicing size is larger than dynamic slicing since it considers all possible paths. Dynamic slicing cost is more expensive than static slicing since recording an execution trace needs much cost.
  4. Statements are the nodes, and data and control dependencies are the edges.
  5. Numbering statements : except if-then-else and while-do
  6. It involves, checking a series of predefined inputs against expected or desired outputs, so that when a specific input does not result in the expected output, you have encountered a bug.
  7. Functional Testing : This black box testing type is related to functional requirements of a system. Non–Functional Testing : This type of black box testing is not related to testing of a specific functionality, but non-functional requirements such as performance, scalability and usability. Regression Testing : It’s done after code fixes, upgrades or any other system maintenance to check the new code has not affected the existing code.