Cucumber
Cucumber lets software development teams describe how software should behave in plain text. The text is written in a business-readable domain-specific language and serves as documentation, automated tests and development-aid - all rolled into one format. Cucumber works with Ruby, Java, .NET, Flex or web applications written in any language. It has been translated to over 40 spoken languages. Cucumber also supports more succinct tests in tables - similar to what FIT does. Dig around in the examples and documentation to learn more about Cucumber tables.
Cucumber is Aslak Hellesøy's rewrite of RSpec's "Story runner", which was originally written by Dan North. (Which again was a rewrite of his first implementation - RBehave. RBehave was his Ruby port of JBehave). Early versions of the RSpec "Story Runner" required that stories be written in Ruby. Seeing how much this sucked David Chelimsky added plain text support with contributions from half a dozen other people.
In April 2008, Aslak Hellesøy started the Cucumber project to address the internal design flaws and usability problems of the RSpec Story Runner (Yes - Cucumber also has warts on the inside). Joseph Wilk and Ben Mabey joined as regular contributors when Cucumber was just a little Gherkin. Matt Wynne joined the Cucumber team in September 2009 after. Mike Sassak and Gregory Hnatiuk joined in October 2009 after their great work on a faster parser for Cucumber. In addition to the core team over 2000 developers have contributed patches, bugfixes, tears and joy.
Cucumber's plain text DSL (Gherkin) somehow came out from the Agile community, mostly based on distillations made by Dan North, Chris Matts, Liz Keogh, David Chelimsky, and dozens of people on the RSpec and Cucumber mailing lists. And Aslak.
-
Lightning Talks
Have you submitted your lightning talk by using one of the flipcharts at CodeNode? Then it's your chance to speak at CukeUp!
cukeup bdd -
-
2
Workshop: A Planning Meeting You’ll Love
Featuring Gaspar Nagy and Matt Wynne
Before you pull a user story into development, it’s crucial to have a conversation to clarify and confirm the acceptance criteria.
cukeup bdd planning user-story backlog example-mapping -
2
Workshop: BDD Heart DDD - Everything by Example
Featuring Paul Rayner and Chris Young
The aim of this workshop is for you to improve your ability to discover needs and explore options for meeting those needs.
cukeup bdd ddd customer domain-model -
Workshop: Shameless
Featuring Seb Rose
Open source software is everywhere. The Cucumber family of tools is a prime example of an open source success, but even here the diversity of contributors is fairly narrow. At a recent meetup of Cucumber contributors there were representatives from 11 nations, but the ethnic, gender and age...
cukeup bdd tdd cucumber red-green-refactor -
2
Workshop: Agile product planning
Featuring John Smart and Jan Molak
BPP is a set of practices based on BDD that enables a product team to efficiently define, budget and prioritise a roadmap or backlog.
cukeup bdd agile product-planning bpp roadmap -
2
BDD in Moderation - A talk from the Trenches
Featuring Keith Salisbury and Joe James
Joe and Keith have spent 12 months building one of the most sophisticated Ruby on Rails applications either of them has ever built. They are both passionate TDD and especially BDD practitioners and this project offered them a chance to really embrace an outside in approach to the development....
cucumber bdd tdd ruby-on-rails cukeup -
Workshop: Build your own Cucumber
Featuring Steve Tooke
Last year saw the release of Gherkin 3, the latest version of the parser underlying cucumber.
cukeup cucumber gherkin gherkin-3 objective-c python ruby go javascript .net java -
2
Workshop: BDD in Finance: Effective implementation of BDD in data rich complex systems
Featuring Peter Thomas and Debbie Evans
Most examples of BDD describe scenarios such as logging into a site or online shopping, these usually involve direct interaction and limited inputs for a single user. Can you even use BDD and gherkin in a domain where the processes are primarily data driven and straight through without any user...
bdd finance cukeup gherkin