ISTQB Software Testing Foundation Course Outline
Domain 1: Fundamentals of Testing
Module 1: What is Testing?
- What is Testing?
- Testing and Debugging
Module 2: Why is Testing Necessary?
- Why is Testing Necessary?
- Testing’s Contributions to Success
- Testing and Quality Assurance (QA)
- Errors, Defects, Failures, and Root Causes
Module 3: Testing Principles
Module 4: Test Activities, Testware and Test Roles
- Test Activities and Tasks
- Test Process in Context
- Testware
- Traceability Between the Test Basis and Test Work Products
- Testing Roles
Module 5: Essential Skills and Good Practices in Testing
- Generic Skills Required for Testing
- Whole Team Approach
- Advantages of the Whole Team Approach
- Independence of Testing
- Levels of Independence
Domain 2: Testing Throughout the Software Development Lifecycle
Module 1: Testing in the Context of a Software Development Lifecycle
- Software Development and Software Testing
- Software Development Life Cycle Models
- Impact of the Software Development Lifecycle on Testing
- Software Development Lifecycle and Good Testing Practices
- Software Development Models
- Testing as a Driver for Software Development
- DevOps and Testing
- Shift Left Approach
- Retrospectives and Process Improvement
Module 2: Test Levels and Test Types
- Test Levels
- Component Testing
- Integration Testing
- System Testing
- System Integration Testing (SIT)
- Acceptance Testing
- Test Types
- Confirmation Testing and Regression Testing
Module 3: Maintenance Testing
Domain 3: Static Testing
Module 1: Static Testing Basics
- Static Testing Basics
- Work Products Examinable by Static Testing
- Value of Static Testing
- Differences between Static Testing and Dynamic Testing
Module 2: Feedback and Review Process
- Feedback and Review Process
- Review Process Activities
- Roles and Responsibilities in Reviews
- Review Types
- Success Factors for Reviews
Domain 4: Test Analysis and Design
Module 1: Test Techniques Overview
Module 2: Black-box Test Techniques
- Equivalence Partitioning
- Exercise
- Boundary Value Analysis
- Exercise
- Decision Table Testing
- Exercise
- State Transition Testing
- Exercise
Module 3: White-box Test Techniques
- White-box Test Techniques
- Statement Testing and Statement Coverage
- Branch Testing and Branch Coverage
- The Value of White-box Testing
Module 4: Experience-based Test Techniques
- Error Guessing
- Exploratory Testing
- Checklist-Based Testing
Module 5: Collaboration-based Test Approaches
- Collaboration-based Test Approaches
- Example 1: E-Commerce Website Checkout Feature
- Example 2: Hospital Management Software
- Exercise
- Collaboration-based Test Approaches
Domain 5: Managing the Test Activities
Module 1: Test Planning
- Purpose and Content of a Test Plan
- Tester's Contribution to Iteration and Release Planning
- Entry Criteria and Exit Criteria
- Estimation Techniques
- Example
- Test Case Prioritisation
- Example: Risk-Based Prioritisation
- Test Case Prioritisation
- Example: Test Case Prioritisation
- Test Case Prioritisation
- Example: Requirements-Based Prioritisation
- Exercise
- Test Pyramid
- Testing Quadrants
Module 2: Risk Management
- Risk Definition
- Risk Attributes
- Project and Product Risks
- Project Risks
- Product Risk Analysis
- Product Risk Analysis: Risk Identification
- Risk Control
- Risk Control – Risk Mitigation
- Risk Control – Risk Mitigation (Example)
- Risk Control – Risk Monitoring
- Risk Control – Risk Monitoring (Example)
Module 3: Test Monitoring, Test Control and Test Completion
- Test Monitoring
- Test Reporting
- Communicating the Status of Testing
Module 4: Configuration Management
Configuration Management
Module 5: Defect Management
- Defect Management
- Exercise
Domain 6: Test Tools
Module 1: Tool Support for Testing
- The Meaning and Purpose of Tool Support
- Tool Support for Testing
Module 2: Benefits and Risks of Test Automation
- Benefits and Risks of Test Automation