We are independent & ad-supported. We may earn a commission for purchases made through our links.
Advertiser Disclosure
Our website is an independent, advertising-supported platform. We provide our content free of charge to our readers, and to keep it that way, we rely on revenue generated through advertisements and affiliate partnerships. This means that when you click on certain links on our site and make a purchase, we may earn a commission. Learn more.
How We Make Money
We sustain our operations through affiliate commissions and advertising. If you click on an affiliate link and make a purchase, we may receive a commission from the merchant at no additional cost to you. We also display advertisements on our website, which help generate revenue to support our work and keep our content free for readers. Our editorial team operates independently of our advertising and affiliate partnerships to ensure that our content remains unbiased and focused on providing you with the best information and recommendations based on thorough research and honest evaluations. To remain transparent, we’ve provided a list of our current affiliate partners here.
Software

Our Promise to you

Founded in 2002, our company has been a trusted resource for readers seeking informative and engaging content. Our dedication to quality remains unwavering—and will never change. We follow a strict editorial policy, ensuring that our content is authored by highly qualified professionals and edited by subject matter experts. This guarantees that everything we publish is objective, accurate, and trustworthy.

Over the years, we've refined our approach to cover a wide range of topics, providing readers with reliable and practical advice to enhance their knowledge and skills. That's why millions of readers turn to us each year. Join us in celebrating the joy of learning, guided by standards you can trust.

What Is ATDD?

By Kenneth W. Michael Wills
Updated: May 16, 2024
References

Acceptance Test Driven Development (ATDD) occurs in a software development environment. Working in collaboration, the programming and software development team determine acceptance criteria, provide examples of that criteria, and then create acceptance tests based on those criteria before beginning software development. Doing so helps the entire team better understand the goals of the finished product, what that finished product should look like, and how it should perform. Following a detailed workflow, ATDD is a structured process, affording the software development team a number of benefits before, during and after the development process. As well, to ensure success the process must include the right team and the right methods.

ATDD establishes a consistent workflow that follows a specified format to ensure all team members understand what is required to make the finished product work as intended. This workflow usually involves establishing the criteria first, most often from a user perspective, and creating concrete examples. Thereafter, acceptance tests are developed and run to see the results of failure with the right code based on these examples. Minimal code is then developed to run the program, more acceptance tests are run again, and the results are validated. Refactoring is then carried out based on the results of the acceptance tests before the final program is developed for use.

Benefits of the ATDD method for software development are often cited among software developers and programmers, both for expediting the development process and ensuring a solid end-product. In the planning stage, helping the development team focus on the right tasks is one major benefit. During creation of examples and testing focus is further refined, while clarity on the process and problems presented during testing is achieved. Throughout the entire process and with the final product, stability and robustness of the software program is the objective. These benefits are usually achieved with the final product if the ATDD workflow is followed and the team collaborates effectively.

Making ATDD work effectively as the method intends, requires the right ingredients from the beginning. Assembled teams need to have qualified contributors, they must collaborate willingly, and they must be well-trained and disciplined to see the process through to completion. Examples created must be automated, efficient, readable, maintainable, locatable and measurable. If the example created does not meet each of these criterion it bogs down the testing and collaboration process, which may result in production of software bugs. Additionally, all designs must be testable for the ATDD process to effectively produce a concise, robust and stable software program.

EasyTechJunkie is dedicated to providing accurate and trustworthy information. We carefully select reputable sources and employ a rigorous fact-checking process to maintain the highest standards. To learn more about our commitment to accuracy, read our editorial process.
Link to Sources
Discussion Comments
Share
https://www.easytechjunkie.com/what-is-atdd.htm
EasyTechJunkie, in your inbox

Our latest articles, guides, and more, delivered daily.

EasyTechJunkie, in your inbox

Our latest articles, guides, and more, delivered daily.