History
Behavior-driven development was developed by Dan North as a response to the issues encountered teaching test-driven development:
- Where to start in the process
- What to test and what not to test
- How much to test in one go
- What to call the tests
- How to understand why a test fails
At the heart of BDD is a rethinking of the approach to unit testing and acceptance testing that North came up with while dealing with these issues. For example, he found that unit test names should be whole sentences starting with the word "should" and should be written in order of business value. Acceptance tests should be written using the standard agile framework of a User story: "As a I want so that ". Acceptance criteria should be written in terms of scenarios and implemented as classes: Given, when, then .
Starting from this point, North and others developed the BDD framework over a period of years, finally framing it as a communication and collaboration framework for developers, QA and non-technical or business participants in a software project. During the "Agile specifications, BDD and Testing eXchange" in November 2009 in London, Dan North gave the following description of BDD:
BDD is a second-generation, outside–in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology. It describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software that matters.
Dan North created the first ever BDD framework, JBehave, followed by a story-level BDD framework for Ruby called RBehave which was later integrated into the RSpec project. He also worked with David Chelimsky, Aslak Hellesøy and others to develop RSpec and also to write "The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends". The first story-based framework in RSpec was later replaced by Cucumber mainly developed by Aslak Hellesøy.
In 2008, Chris Matts, who was involved in the first discussions around BDD, came up with the idea of Feature Injection, allowing BDD to cover the analysis space and provide a full treatment of the software lifecycle from vision through to code and release.
Read more about this topic: Behavior Driven Development
Famous quotes containing the word history:
“One classic American landscape haunts all of American literature. It is a picture of Eden, perceived at the instant of history when corruption has just begun to set in. The serpent has shown his scaly head in the undergrowth. The apple gleams on the tree. The old drama of the Fall is ready to start all over again.”
—Jonathan Raban (b. 1942)
“If you look at the 150 years of modern Chinas history since the Opium Wars, then you cant avoid the conclusion that the last 15 years are the best 15 years in Chinas modern history.”
—J. Stapleton Roy (b. 1935)
“The history of the past is but one long struggle upward to equality.”
—Elizabeth Cady Stanton (18151902)