Professional Documents
Culture Documents
Why Do You Say BDD If It Is Cucumber
Why Do You Say BDD If It Is Cucumber
Why Do You Say BDD If It Is Cucumber
Cucumber?
Or How I Learned to Stop Worrying and Love the Behavior
Enrique Snchez
Technical Team Lead @ Medianet Software
All of these tools are great but, in the end, tools are tools.
While RSpec and Cucumber are optimized for BDD, using them
doesnt automatically mean youre doing BDD.
Engineering
Product
Miscommunication
between stakeholders, product, devs
Gherkin
Define a narrative
Why?
Feature name, Actor, behavior, benefit
What?
Scenarios and steps
Feature
In
order
to
Value proposition
As
a
Role/actor
I
want
to feature description
Scenario
Given
setup
When
user
interaction/change
Then
outcome (assert)
Define a feature
Start with expectations
Instead of setting state or user actions
Keep Scenarios simple
Split complicated workflows
Declarative
Be concise
Dont be Shakespeare
Not unnecessary steps
Remember YAGNI
Abstraction
Describe a feature, not edge cases
Think in requirements
Only BDD the happy path
Therere controller/model/view tests
Narratives
Examples
Emergent Design
Describe
Implement
Questions?
Thank you!