Executable requirements: BDD with easyb and JDave
Behavior-Driven Development, or BDD, is an excellent development strategy that can help bridge the traditional gap between requirements and implementation. This talk will go discuss the basic principles of Behavior Driven Development, and look at how it builds on and differs from “traditional” Test-Driven Development. This session will demo two BDD tools: JDave, an open source framework that incorporates BDD concepts into JUnit, and easyb, a DSL-based behavior driven development framework for Java that uses Groovy to let you pretty much write tests that document themselves.
The talk will be very practical. We will run through the principles of BDD, first introduced by Dan North and used in many testing frameworks such as jbehave and rspec. We will look at how to write basic BDD test stories, how to use fixtures and other more advanced features, and of course how to integrate BDD into your build process. In a series of live, coded examples, we will see how JDave and easyb can be used to use BDD techniques in a variety of ways. No knowledge of TDD, BDD or Groovy is required!
- Understand the principles of BDD
- Understand how BDD uses words like “should”, and structured scenarios such as “given…when…then” to help developers focus on the real requirements.
- Learn how BDD frameworks help structure your tests and focus your development efforts, and indeed shape the code you write
- Get a good practical idea of both JDave and easyb, what they offer, and which one would be most appropriate for your environment.