UNIT I – Fundamentals & Boundary Value Testing
From Part I: A Mathematical Context
• 1.1 Basic Definitions
• 1.2 Test Cases
• 1.6 Levels of Testing
• 2.2 – 2.5 Triangle, NextDate, Commission, SATM Problems
From Part II: Unit Testing
• 5.1 – 5.4 Boundary Value Testing (Normal, Robust, Worst-Case, Special Values)
• 5.5 – 5.7 Test Cases (Triangle, NextDate, Commission) + Guidelines
• 5.6 Random Testing
UNIT II – Equivalence, Decision Table & Data Flow Testing
• 6.1 – 6.3.4 Equivalence Class Testing (Weak/Strong, Normal/Robust)
• 6.4 – 6.6 Equivalence Class Test Cases (Triangle, NextDate, Commission)
• 6.8 Guidelines and Observations
• 7.1 – 7.5 Decision Table Based Testing (all examples)
• 7.6 – 7.7 Cause-and-Effect Graphing, Guidelines
• 9.1 – 9.1.8 Define/Use Data Flow Testing
• 9.2 – 9.3 Slice-Based Testing and Tools
UNIT III – Levels, Integration, System & Interaction Testing
• 8.1 – 8.4.3 Program Graphs, DD-Paths, Path Coverage, Basis Path Testing
• 8.5 Guidelines and Observations
• 10.4.2.1 – 10.4.2.3 Path-Based Testing, Data Flow, Slice Testing (Insurance Premium
Example)
• 11.1 – 11.2.2 Waterfall Testing and Iterative Models
• 11.3 Agile Testing (XP, Scrum, TDD for system testing/interaction)
UNIT IV – OO, Exploratory, Model-Based Testing, TDD, Best Practices
• 9.1.8 Define/Use Testing for Object-Oriented Code
• 9.2.2 Slice Techniques for OO Testing
• 4.3 – 4.3.5 FSMs, Petri Nets, StateCharts (Model-Based Testing)
• 11.3.2 Test-Driven Development
• 11.4 – 11.4.2 Model-Driven Development
• 10.5 Guidelines & Best Practices for Software Testing