What is Agile Testing — Methodologies?

What is Agile Testing — Methodologies?

19 Sep 2022
0 Comments
What is Agile Testing — Methodologies?

In an iterative development methodology, in Agile the entire project team partakes in the activities. The requirements develop as the iterations advance, through collaboration between the customer and the self-organizing teams. During development, Coding and Testing are performed interactively and incrementally and the end-product obtained ensures quality and is as per customer requirements.

Every iteration results in an integrated working product increment which is supplied for User Acceptance Testing. The customer feedback acts as input for the next/subsequent iteration.


Agile Methodologies

Several Agile Methodologies support Agile Development. These Agile Methodologies are -


Scrum

An Agile development method, Scrum emphasizes on team-centric approach. It supports the participation of the entire team in all the project development activities.


XP

eXtreme Programming is customer-centric and concentrates on constantly changing requirements. With systematic releases and customer feedback, the end outcome will be of quality that meets the customer requirements which are made clearer during the process.


Crystal

Crystal is established on chartering, cyclic delivery, and wrap-up.

  • Chartering includes building a development team, carrying out a preliminary feasibility analysis, and arriving at an initial plan & development methodology.
  • Cyclic delivery for two or more delivery cycles concentrates on the development phase and final integrated product delivery.
  • Wrap-up performs deployment into the user environment, post-deployment reviews, and reflections.


FDD

Feature Driven Development (FDD) involves developing and building features. The difference between FDD and other Agile Development Methodologies is that - in FDD the elements are developed in specific and short phases, separately.


DSDM

Dynamic Software Development Method (DSDM) is established on Rapid Application Development (RAD) and is aligned to the Agile Framework. It focuses on systematic delivery of the product, involving users, and empowering the teams to produce rapid decisions.


Agile Testing Methodologies

The testing techniques are defined for every project, to deliver quality outcomes. Traditional Testing principles are often used in Agile Testing. One of them is - Early Testing - which focuses on:

  • Writing Test Cases to define the behavior of the system.
  • Early Defect detection, prevention, and removal.
  • Ensuring that the right test types are run at the right time, as part of the right test level.

Agile Testing in itself is a Methodology. In all approaches of Agile Testing, Test Cases are documented before Coding.


The other commonly used Agile Testing Methodologies include-

Test-Driven Development (TDD) - Test-Driven Development (TDD) is based on coding driven by tests.


Acceptance Test-Driven Development (ATDD) - ATDD or Acceptance Test-Driven Development depends on the communication between the developers, testers, and customers. It is conducted by pre-defined Acceptance Criteria & Acceptance Test Cases.


Behavior-Driven Development (BDD) - Behavior-Driven Development (BDD) testing is based on the characteristic behavior of the software being developed.


Agile Testing Lifecycle
In Scrum, the Testing activities contain -

  • Contributing to User Stories based on the usual behavior of the System defined as Test Cases
  • Release Planning based on Test Effort & Defects
  • Sprint Planning depending on User Stories and Defects
  • Sprint Execution with Continuous Testing
  • Regression Testing after completion of Sprint
  • Reporting Test Results




Leave a comment: