# Traditional and Agile Testing

In testing techniques, there are two types of tests: traditional and agile.

Traditional tests are based on a waterfall model lifecycle, where testing is conducted after software construction, with a focus on finding defects.

On the other hand, agile tests are based on an iterative and incremental lifecycle model, where testing occurs during software construction, focusing on defect prevention.

# 7 Principles of Traditional Testing

  1. Testing demonstrates the presence of defects; however, it does not guarantee their absence.
  2. Exhaustive testing is impossible: Consider application risks and priorities, selecting possible values to provide maximum test coverage.
  3. Testing should start as early as possible; errors found later cost more to fix.
  4. Clustering of defects.
  5. Pesticide Paradox.
  6. Testing is context-dependent.
  7. The fallacy of absence of errors.

# Testing in Agile Methodology

The focus of Agile QA is on:

  • Bug prevention, identifying issues early to reduce costs and efforts.
  • Ensuring clear customer expectations.
  • Embracing new ideas.
  • The Tester is part of a team.
  • Quality is the team's responsibility.
  • Testing is an integral part of the software development process.

Traditional QA focuses on finding defects, figuring out ways to break the software.

Agile QA aims to prevent errors, identifying bugs in the early stages to optimize application construction, avoiding rework, and minimizing risks.