When we say agile, two terms comes to mind immediately - Extreme programming and Scrum. Extreme Programming is a software development method or framework that follows the agile values and principles. It has a specific set of practices to be followed.
Scrum is a project management framework which follows the agile values and principles. It also has specific set of practices to follow. So agile testing is a set of values and principles which helps in software development and project management.
Agile Testing
Call it another approach to testing. You can apply agile to any development method XP or scrum or any other combination. You just need to check when and how are we testing something. It is a way of thinking which promotes the idea of preventing defects by questioning ideas and assumptions in the early phase. It binds testing and development activities within a team and/or organization.
In Agile testing you get quick feedback while running regression test which saves time and costs. It also encourages expanding your testing skills including exploratory testing to test the scenarios which you didn’t think about. In agile testing, teams recognize the fact that testing is an activity which happens throughout the development cycle and not just a phase at the end. It includes the ability to test ideas by asking questions to the the organization/team to seek clarifications which help reduce assumptions.
Agile testing is also about the courage to talk about testing to the team and the organization, so that everyone knows the status of the product. In this approach, ‘agile testing quadrants’ are mostly used to show the different types of testing that any product might need. Hence, it gives more visibility to testing.
Importantly, it enables testers to be the real contributors behind the product success by not only testing the product but through helping the business build the correct solution.