CTFL Testing Throughout the Software Life Cycle

Explore testing practices across the software development life cycle for ISTQB Certified Tester Foundation Level (CTFL)

2.1 Software Development Models

Software development models define the process for building software, influencing how testing is conducted. Common models include:

Key Point: Testing adapts to the chosen model, with Agile requiring frequent, integrated testing compared to Waterfall’s late-stage testing.

2.2 Test Levels

Test levels are stages of testing aligned with the software development process:

  1. Component Testing: Tests individual components or modules in isolation (e.g., unit testing).
  2. Integration Testing: Tests interactions between components or systems.
  3. System Testing: Tests the entire system as a whole to verify it meets requirements.
  4. Acceptance Testing: Validates the system against user needs and business requirements.

Note: Each level has specific objectives and focuses on different aspects of the system.

2.3 Test Types: The Targets of Testing

Test types focus on specific objectives and can be applied at any test level:

Key Point: Test types are not tied to specific levels; for example, functional testing can occur during component or system testing.

2.4 Maintenance Testing

Maintenance testing occurs after the software is released to ensure updates, bug fixes, or changes (e.g., new features, environment changes) don’t introduce defects. It includes:

Note: Maintenance testing is critical for systems with frequent updates or long lifespans.

Chapter Review Questions

Test your understanding with these review questions:

  1. What is the key difference between the Waterfall and Agile development models in terms of testing?
  2. Name the four main test levels and their primary focus.
  3. What is the purpose of regression testing in maintenance testing?
  4. Which test type focuses on how the system performs rather than what it does?