You are on page 1of 3

Reading Assignment(6th April)

Name: K.Lakshmi Nirmala


Id Number: 2021101126
1) Agile Testing Methodology:
Agile testing methodology is a methodology that helps developers test their
code continuously and rapidly. This methodology helps to find out the user
requirement to improve our codebase and clear bugs in the codebase
continuously. This methodology allows testers to get immediate feedback
from customers. It is software testing that follows the best practices of the
agile development framework. Agile testing methodology breaks down
larger testing elements into smaller, more specific tests with a narrower
focus on a specific user story, task, or technical requirement.

2) Agile testing and continuous testing are two complementary approaches to


help improve product quality. Agile testing ensures that the software meets
the customer’s needs and expectations, while continuous testing provides
fast feedback on the software’s quality and performance. By adopting
these two techniques to test our code base and progress, development
teams can reduce the risk of defects and improve the overall quality of the
product to get the fastest outcome.

3) In Agile and Agile testing, acceptance criteria refer to the specific


conditions that a user story must meet to be considered complete and
accepted by the product owner or customer. Acceptance criteria help
ensure that the product meets the customer's needs and expectations and
that the development team delivers the features that the customer has
requested. Acceptance criteria are usually written in collaboration between
the product owner, the development team, and the testing team.
Acceptance criteria are used to define the boundaries of a user story,
specify what needs to be done, and define the acceptance tests that will be
used to verify that the story is complete.
Acceptance criteria typically include:
● Preconditions: These are the conditions that must be met before the
user story can be tested.
● Actions: These are the steps that the user should be able to perform
with the new feature or functionality.
● Expected results: These are the results that the user should expect
from using the new feature or functionality.
● Non-functional requirements: These are the requirements related to
the performance, security, usability, or any other aspect of the
software that is not directly related to the user's interactions with the
system.
Acceptance criteria help ensure that the development team delivers the
right features and that the product owner or customer has a clear
understanding of what they are getting. Acceptance criteria are also used
by the testing team to create acceptance tests that will verify that the user
story is complete and meets the acceptance criteria.

4) Examples of Agile Testing Methodology


i) Acceptance Test-Driven Development(ATDD)
ii) Behaviour-Driven Development(BDD)
I) Acceptance Test-Driven Development(ATDD)
Acceptance Test-Driven Development (ATDD) is an Agile software
development technique that involves the collaboration between
developers, testers, and customers to define and implement a set of
acceptance tests before writing any code. This type of development begins
by discussing how the product will be used. So, you write a user
acceptance test (UAT). And then you write the code until it passes the test.
The primary goal of ATDD is to ensure that the development team
understands the customer's requirements and that the final product meets
those requirements. This is achieved by involving the customer in the
process of defining acceptance criteria that can be used to validate the
system.

The ATDD process involves three key steps:

❖ Defining the acceptance criteria: In this step, the development team


works with the customer to define the acceptance criteria for the
system. This involves identifying the key features of the system and
the expected outcomes for each of those features.
❖ Creating acceptance tests: Once the acceptance criteria are
defined, the development team creates a set of acceptance tests
that can be used to validate the system. These tests should be
automated and run every time a new feature is added or an existing
feature is modified.
❖ Developing the software: With the acceptance tests in place, the
development team can start writing the code for the system. The
acceptance tests serve as a guide for the development process,
ensuring that each feature is implemented correctly and that the
system meets the customer's requirements.
II) Behaviour-Driven Development(BDD):
BDD is a methodology that focuses on collaboration,
communication, and automation to produce software that meets business
requirements. It uses a specific format called Gherkin to define the desired
behavior of the software in terms of specific scenarios and encourages
continuous integration and delivery to ensure that the software is always
meeting the desired behavior.
BDD also emphasizes continuous integration and continuous
delivery, which means that software is frequently tested and delivered to
customers in small increments, rather than in large releases. This allows
for faster feedback and more frequent improvements to the software.
Behavior-driven development (BDD) often stems from test-driven
development and acceptance of test-driven development. In
behavior-driven development, the purpose of development needs to be
tied to a business outcome. It verifies that the product functions are
necessary for the desired business outcome.

5) Key parts of the Agile Testing Strategy (One of the examples of Agile
Testing Methodology)
➔ Purpose: This refers to the reason for testing, defined by the user
story.
➔ Objectives: This involves the creation of test cases that align with
the purpose of the testing. Test objectives should be clear and
specific, outlining what needs to be tested.
➔ Scope: This refers to the boundaries of the testing and what needs
to be covered. The testing scope should be defined based on the
purpose and objectives of the testing.
➔ Methods: This outlines how the testing will be conducted, including
the tools, techniques, and approaches that will be used.
➔ Feedback: This involves collecting feedback and using it to improve
the testing process. Feedback can come from various sources, such
as test results, stakeholders, or team members.

You might also like