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.
-
The Delayed Gratification Principle
Featuring Stephen Anderson
Delayed gratification is the ability to resist the temptation for an immediate reward and wait for a later reward. In this short talk, Stephen discusses the benefits of applying this psychology concept in software development.
agile cukeup bdd -
2
Workshop: Modelling by Example
Featuring Konstantin Kudryashov and Ciaran McNulty
We know BDD and tools like Cucumber are amazing helpers in talking with businesses effectively. It is a great way to extract business requirements in the way that there's no inherited ambiguity. But what if it is much more? What if Cucumber could also help us to model our application as much...
bdd ddd domain modelling examples cukeup gherkin -
Unconference
We’ll be running an Unconference in CapsLock during the second day. The format will be explained at the beginning of the conference each day.
cukeup cucumber -
Workshop: Bringing User Stories to Life
Featuring Gemma Cameron
As a manager - I want to manage - So I can manage things
cukeup user-stories manager management -
Workshop: Cucumber-JVM
Featuring Thomas Sundberg
Thomas will show you how to use Cucumber-JVM with Java to drive both client-side and back-end code.
cukeup cucumber cucumber-jvm -
2
Workshop: Introduction to Event storming
Featuring Mathias Verraes and Julien Biezemans
Most business domains have a temporal aspect to them. That’s why, instead of modelling things and structures, Event Storming visualises events happening over time. Gradually, we add causation, business rules, dependencies, and processes, in a huge timeline.
cukeup modelling domain ddd communication visualisation event-storming -
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
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 -
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 -
Behaviour-Driven Development: The Bigger Picture
Featuring Paul Rayner
Having trouble understanding how the different puzzle pieces of BDD fit together? Don't worry. Many teams struggle with this same problem. We don't want you wasting time and effort on the wrong things, or wrestling with doing the right things at the wrong time. Not understanding the...
bdd cukeup cucumber test-automation gherkin ux