06IS81 Software Testing syllabus for IS


Part A
Unit-1 Basics of Software Testing 1 6 hours

Human Errors and Testing; Software Quality; Requirements, Behavior and Correctness; Correctness versus Reliability; Testing and Debugging; Test Metrics.

Unit-2 Basics of Software Testing 2 6 hours

Software and Hardware Testing; Testing and Verification; Defect Management; Execution History;Test-generation Strategies, Static Testing. Model-Based Testing and Model Checking; Control-Flow Graph; Types of Testing; The Saturation Effect.

Unit-3 Test Generation from Requirements 1 7 hours

Introduction; The Test-Selection Problem; Equivalence Partitioning; Boundary Value Analysis; Category-Partition Method.

Unit-4 Test Generation from Requirements 2 7 hours

Cause-Effect Graphing, Test Generation from Predicates.

Part B
Unit-5 Structural Testing 6 hours

Overview; Statement testing; Branch testing; Condition testing, Path testing; Procedure call testing; Comparing structural testing criteria; The infeasibility problem.

Unit-6 Dependence Data Flow Models and Data Flow Testing 6 hours

Definition-Use pairs; Data flow analysis; Classic analyses; From execution to conservative flow analysis; Data flow analysis with arrays and pointers; Inter-procedural analysis; Overview of data flow testing; Definition-Use associations; Data flow testing criteria; Data flow coverage with complex structures; The infeasibility problem.

Unit-7 Test Case Selection and Adequacy, Test Execution 6 hours

Overview; Test specification and cases; Adequacy criteria; Comparing criteria; Overview of test execution; From test case specification to test cases; Scaffolding; Generic versus specific scaffolding; Test oracles; Self-checks as oracles; Capture and replay.

Unit-8 Process 8 hours

Test and analysis activities within a software process: The quality process; Planning and monitoring; Quality goals; Dependability properties; Analysis; Testing; Improving the process; Organizational factors. Integration and component-based software testing: Overview; Integration testing strategies; Testing components and assemblies. System, Acceptance and Regression Testing: Overview; System testing; Acceptance testing; Usability; Regression testing; Regression test selection techniques; Test case prioritization and selective execution.

Last Updated: Tuesday, January 24, 2023