Agile Software Testing
article I will explain in detail what is agile testing and advantages using agile
Definition (Reference Wikipedia)
Agile testing is a software
testing practice that follows the principles of agile software development.
Agile testing involves all members of a cross-functional agile team, with
special expertise contributed by testers, to ensure delivering the business value
desired by the customer at frequent intervals, working at a sustainable pace.
Agile, as its
name suggests, simply proposes to be a faster, more priority & risk
focused, and more flexible, adaptable, and efficient way of conducting the
complicated business of software production. And, of course, it is not
without its critics.
In the agile approach:
=> Testing and coding are done incrementally and interactively
=> Developers and testers should always meet and compare notes
Building up each feature until it provides enough value to
release to production
=> Requires a depth of continuous collaboration between stakeholders-
mangers, developers, testers and customers throughout the production process
=> Reducing the need for robust testing teams
=> All types of testing covers
1. Agile Testing Saves Time and Money.
2. Less Documentation.
3. Regular feedback from the end user.
4. Daily meetings can help to determine the
issues well in advance.
In the usual waterfall model the sequential phases are:
As you can see in the diagram
above, in a waterfall process the “design” and “implementation” stages exist
prior to, and distinct from, the “verification” and “maintenance” stages.
This split between software developers and software testers, positioning them
as separate entities at different points along a production cycle, is one of
the fundamental problems that Agile seeks to resolve.
Agile Scrum Process:
In the Scrum method of agile software
development, work is confined to a regular, repeatable work cycle, known as
a sprint or iteration. Scrumsprints used to be 30 days long, but
today many teams prefer shortersprints, such as one-week or
The sprint backlog is a list of tasks identified by
the Scrum team to be completed during the Scrum sprint. During
the sprint planning meeting, the team selects some number of product
backlog items, usually in the form of user stories, and identifies the tasks
necessary to complete each user story.
The Scrum Master is to constantly refine the schedule and direction and keep
Advantages over classic waterfall
1. Scrum relies on more
frequent touch points between developers and testers,
Testers and BAs, and BAs and
Developers to make sure any changes are
2. Daily standup calls
keeps activities aligned, remove obstacles if any team member facing.
3. Knowledge sharing is
better in this process.
4. Strong project management
keeps team on track and active.
constantly evolving. Today there are emerging methodologies like BDD, TDD,
ATDD, Kanban and many more.